重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在窗体上加上三个标签控件:Label1、Label2、Label3
创新互联公司于2013年创立,是专业互联网技术服务公司,拥有项目成都网站设计、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元漳浦做网站,已为上家服务,为漳浦各地企业和个人服务,联系电话:18980820575
Private Sub DataGridView1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles DataGridView1.MouseUp
Dim counter As Integer
Dim SelectedCellTotal As Integer = 0
Dim SelectedCellCount As Integer = 0
For counter = 0 To (DataGridView1.SelectedCells.Count - 1)
If DataGridView1.SelectedCells(counter).FormattedValueType Is _
Type.GetType("System.String") Then
Dim value As String = Nothing
If (DataGridView1.IsCurrentCellDirty = True) Then
value = DataGridView1.SelectedCells(counter).EditedFormattedValue.ToString()
Else
value = DataGridView1.SelectedCells(counter).FormattedValue.ToString()
End If
If value IsNot Nothing Then
If Not value.Length = 0 Then
SelectedCellTotal = SelectedCellTotal + Integer.Parse(value)
SelectedCellCount = SelectedCellCount + 1
End If
End If
End If
Next
Label1.Text = "选中的单元格个数为: " SelectedCellCount.ToString()
Label2.Text = "单元格里数据之和为: " SelectedCellTotal.ToString()
Label3.Text = "选中的单元格行数为:" DataGridView1.SelectedRows.Count.ToString()
End Sub
用正则匹配即可
Option Explicit
Function GetSource$(Source$) '//正则匹配td/td
Dim reg As Object
Dim matchs As Object, match As Object
Dim s As String, i As Integer
Set reg = CreateObject("vbscript.regExp")
reg.Global = True
reg.IgnoreCase = True
reg.MultiLine = True
reg.Pattern = "label.*?(.*?)\/label"
Set matchs = reg.Execute(Source)
For Each match In matchs
i = i + 1
s = s match.SubMatches(0) + vbCrLf
Next
GetSource = s
End Function
Function div$(Source$) '//正则匹配 div/div
Dim reg As Object
Dim matchs As Object, match As Object
Dim s As String, i As Integer
Set reg = CreateObject("vbscript.regExp")
reg.Global = True
reg.IgnoreCase = True
reg.MultiLine = True
reg.Pattern = "div.*?(.*?)\/div"
Set matchs = reg.Execute(Source)
For Each match In matchs
i = i + 1
s = s match.SubMatches(0) + vbCrLf
Next
div = s
End Function
Private Sub Command1_Click()
MsgBox "div标签获取" + vbCrLf + GetSource$(Text1)
MsgBox "label标签获取" + vbCrLf + GetSource$(Text1)
End Sub
另一个简单点的方法是,假如HTML里面有个文本框是
input type="text" class="body_normal" id="TESTID" value="TEXTBOX" /
则VB.NET里写
text=web.Document.GetElementById("TESTID").GetAttribute("value")
则得到text="TEXTBOX"
我将你的上面的html代码复制到一个test.html文件中
html
head
titleTest Page/title
/head
body
input name="txtCSRQ" class="textbox" id="txtCSRQ" type="text" readonly="readonly" value="1993-05-10"/
/body
/html
然后在vb.net的webbrowser中加载这个test.html,加载完毕后点击一个按钮获取input的value值,实现代码如下:
' 此方法为Form1的加载事件
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 加载本地文档test.html
WebBrowser1.Url = New Uri(String.Format("{0}/test.html", Application.StartupPath))
' 文档没有加载完毕之前将按钮禁用
Button1.Enabled = False
End Sub
' 此方法为Button1的Click事件
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim doc As HtmlDocument = WebBrowser1.Document
' 查找ID为txtCSRQ的元素
Dim element As HtmlElement = doc.GetElementById("txtCSRQ")
' 如果找到了改元素
If element IsNot Nothing Then
' 显示该元素的值
MessageBox.Show(element.GetAttribute("value"))
End If
End Sub
' 此方法为WebBrowser的DocomentCompleted事件
Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
' 文档test.html加载完毕后,使按钮可用
Button1.Enabled = True
End Sub
很简单,看代码:
Dim objexcelfile As Excel.Application = New Excel.Application
objexcelfile.DisplayAlerts = False
Dim objworkbook As Excel.Workbook = objexcelfile.Workbooks.Open("D:\1.xlsx") 'Excel文件路径
Dim objimportsheet As Excel.Worksheet = objworkbook.Sheets(1) '读取第一个Sheet
Dim intRow As Integer = objimportsheet.UsedRange.Rows.Count '获取总行数
Dim prod As String = objimportsheet.Cells(j, i).value '读取单元格的值(i是列,j是行)
'释放Excel文件
objworkbook.Close()
objworkbook = Nothing
objexcelfile.Quit()
注意需要添加 Microsoft.Office.Interop 的引用。
用findwindowex的API函数查找这个句柄窗口中的子窗口(LABEL也是作为子窗口的),
Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long