ListViewのダブルクリックした項目の行列Indexのとり方 – プログラミング – Home

ListViewのダブルクリックした項...
 
通知
すべてクリア

[解決済] ListViewのダブルクリックした項目の行列Indexのとり方


ひより
 ひより
(@ひより)
ゲスト
結合: 18年前
投稿: 3
Topic starter  

タイトルの通りです。環境はVB2005、XPです

ListViewのViewはDetailsです。
FullRowSelectをTrueにしています。(Falseにしても結果は同じ)
行20・列4の表です。
ネットで調べてると以下のような方法で
ダブルクリックした項目の行Indexは取れましたが列Indexがわかりません。
どのようにしたら列のIndexをとれますか?

'マウスダウンの座標をとる
Private Sub ListView1_MouseDown(ByVal sender As Object, ByVal e As
System.Windows.Forms.MouseEventArgs) Handles ListView1.MouseDown
pt = New Point(e.X, e.Y)
End Sub

'DoubleClickで行列Indexをとる
Private Sub ListView1_DoubleClick(ByVal sender As Object, ByVal e As
System.EventArgs) Handles ListView1.DoubleClick
Dim lv As ListViewItem = ListView1.GetItemAt(pt.X, pt.Y)
'lv.Indexで行のIndexはとれるが列のIndexは取れない??
End Sub


引用未解決
トピックタグ
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

2005ならばListView.HitTestなんか使えそう。(未確認)

[MSDN]ListViewHitTestInfo クラス
http://msdn2.microsoft.com/ja-
jp/library/system.windows.forms.listviewhittestinfo(VS.80).aspx


返信引用
ひより
 ひより
(@ひより)
ゲスト
結合: 18年前
投稿: 3
Topic starter  

Blue様

HitTestで出来ました
ありがとうございました。

Dim row, col As Integer
Dim info As ListViewHitTestInfo = ListView1.HitTest(pt)

row = info.Item.Index
col = info.Item.SubItems.IndexOf(info.SubItem)


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました