リストビューの項目の数が決まっていなくて、ある項目を削除した時
その空欄に一つ下の項目が一つずつ上がっていくようにしたいのですが、
以下のコードだと最後の空白行の処理でエラーが起きます。
どなたかいい方法をご存知ではないでしょうか?
Dim i As Integer
For i = 1 To 30 Step 1 '本当は何個か不定ですが30にしておきました。
If frmMain.lstv.ListItems(i).Text = " " Then
If frmMain.lstv.ListItems(i + 1).Text = " " Then Exit For
frmMain.lstv.ListItems(i).Text =
frmMain.lstv.ListItems(i + 1).Text
frmMain.lstv.ListItems(i).SubItems(1) =
frmMain.lstv.ListItems(i + 1).SubItems(1)
End If
Next
標準で上がっていきませんか?
frmMain.lstv.ListItems.Remove 2 ' <-- 2行目を削除したい場合
問題をはずしていたら、ごめんなさい(^^;
1212
編集 削除