在窗體上加上三個標(biāo)簽控件:Label1、Label2、Label3
成都創(chuàng)新互聯(lián)公司專注于企業(yè)營銷型網(wǎng)站、網(wǎng)站重做改版、讓胡路網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、成都h5網(wǎng)站建設(shè)、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為讓胡路等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
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?=?"選中的單元格個數(shù)為:?"??SelectedCellCount.ToString()
Label2.Text?=?"單元格里數(shù)據(jù)之和為:?"??SelectedCellTotal.ToString()
Label3.Text?=?"選中的單元格行數(shù)為:"??DataGridView1.SelectedRows.Count.ToString()
End?Sub
你是想獲取總行數(shù)?還是選中行和列的索引?
獲取總行數(shù):dataGridView1.Rows.Count;
獲取當(dāng)前選中行索引:int
i
=
this.dataGridView1.CurrentRow.Index;
獲取當(dāng)前選中列索引:int
j
=
this.dataGridView1.CurrentCell.ColumnIndex;
可以把某個列為空就當(dāng)做是空行,你連接字符串是hdr=no,也就是第一行不作為列標(biāo)題,那么就是用的默認(rèn)的列標(biāo)題,F(xiàn)1,F(xiàn)2.。。這些。
比如,第一列的某行為空的話就當(dāng)做是空行,你可以加這個條件 where len([F1]) 0
求行:
RichTextBox1.GetLineFromChar(RichTextBox1.SelStart)+1
這個代碼呢,我的理解呢,是獲取在selstart的地方的行數(shù)。一般來講selstart的地方都是光標(biāo)的地方,然后會給你返回line。不過返回的時候要自己加1。不是很懂這個語法,有懂得可以教我一下
以上是求行數(shù)。
求列:
For i = 0 To RichTextBox1.SelStart
If RichTextBox1.GetLineFromChar(RichTextBox1.SelStart) - RichTextBox1.GetLineFromChar(RichTextBox1.SelStart - i) 0 Then Exit For
j = j + 1
Next i
這個for循環(huán)呢,講的是檢查這一行光標(biāo)前有多少個列,然后用J輸出列的個數(shù)。
因為VB6.0沒有RichTextBox1.GetFirstCharIndexOfCurrentLine這種語法。所以就得自己模擬這個過程。
具體怎么檢查的呢,首先將 i 從0循環(huán)到光標(biāo)處,
如果 【光標(biāo)字符數(shù)】處的行數(shù) 減去 【光標(biāo)字符數(shù)減去 i 個字符數(shù)】處的行數(shù)小于0了,我寫了個不為零。但此時寫小于零就可以。那么代表著換行了,同時也代表著光標(biāo)到上一行之間有多少字。用j存儲循環(huán)次數(shù),得出對應(yīng)列數(shù)。(我們中文習(xí)慣是叫第一列,但程序?qū)嶋H上是第零列,但在循環(huán)的時候就注意到并解決這個問題了)
如果你替換寫法,例如
If RichTextBox1.GetLineFromChar(RichTextBox1.SelStart) - RichTextBox1.GetLineFromChar(RichTextBox1.SelStart + i) 0 Then Exit For
j = j + 1
Next i
這個 J 就對應(yīng)著光標(biāo)到該行結(jié)尾有幾個字符了,如果有需要可以使用,但一般不需要。
那么就像上面說的那樣,行列都求出來了,最后用事件和TEXT或者caption表現(xiàn)出來就好了
至于說總行數(shù)
RichTextBox1.GetLineFromChar(Len(RichTextBox1.Text)) + 1
通過對最后一個字符的位置(總長度)的行來判斷唄,不過也得加一。
Visualbasic代碼編輯器沒有這個功能,但可以用第三方的編輯軟件Emedit來實現(xiàn)這個功能。
1、用Emedit打開*.frm文件。
2、點工具,當(dāng)前配置屬性,然后勾選顯示行號即可。
[c65536].END(3).ROW'這個比較合適03版,10當(dāng)數(shù)據(jù)多65536也就不對了
cells(rows.count,3).end(xlup).row'這個適合03跟10版
當(dāng)前名稱:關(guān)于vb.net查詢表的行數(shù)的信息
本文來源:http://m.kartarina.com/article20/hddcco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、虛擬主機(jī)、標(biāo)簽優(yōu)化、網(wǎng)站策劃、品牌網(wǎng)站設(shè)計、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)