リストビュー複数選択について

解決


のまのま  2005-12-10 01:05:29  No: 128769

QAの掲示板でも質問したのですが・・・・
リストビューとボタンが一つあるとします。リストビューに表示されている項目を複数選択したらボタン使用不可にするプログラムを作ろうと思っています。過去ログの【ListViewで複数選択しているかの判定
:http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200402/04020049.txt】を参考に作ってみたのですが、リストを選択した時に『インデックスが範囲を超えています』というエラーが表示されます。いろいろ考えたのですがエラーを処理することが出来なくて困っています。みなさんの意見を聞かせてください
開発環境
OS:WinXP
バージョン:VB6(SP5)

Private Sub ListView1_Click()
    Dim intI as Integer 
    Dim intCnt as Integer

    For intI = 0 To ListView1.ListItems.Count
        If lListView1.ListItems(intI).Selected = True Then
            intCnt = intCnt + 1
        End If
    Next

    If intCnt > 2 Then
       Command1.Enabled = False
    End If
End Sub


nameless  2005-12-10 01:07:43  No: 128770

For intI = 0 To ListView1.ListItems.Count - 1
        If lListView1.ListItems(intI).Selected = True Then
            intCnt = intCnt + 1
        End If
    Next


Blue  2005-12-10 01:10:35  No: 128771

> QAの掲示板でも質問したのですが・・・・
すぐにレスがつかないからといって、複数の掲示板に投稿するのはやめたほうがいいです。
(マルチポストという行為。掲示板ではマナー違反。)

最低でも1週間ほど見てから、レスがつかないようならば、いったんそこを閉じて別のところに投稿数するようにします。

急いでいる場合は、やむを得ないですが、クロスポストをします。
私も「クロスポスト」については良く分からないので、検索とかしてみてください。

ちなみに、ここの掲示板はQAの掲示板と見ている人はほぼ同じですよ。


のまのま  2005-12-10 01:17:32  No: 128772

namelessさん、Blueさんレスありがとうございます。
namelessさん:試してみたのですが、同じエラーが出てしまいました。
Blueさん:すいません。掲示板を見てる人が同じなのは大体わかっているのですが、納期が迫っていてつい・・・。以後気をつけます。ご指摘ありがとうございました。


nameless  2005-12-10 01:30:52  No: 128773

intCnt= 0  
   For intI = 0 To ListView1.ListItems.Count - 1
        If lListView1.ListItems(intI).Selected = True Then
            intCnt = intCnt + 1
        End If
   Next


のまのま  2005-12-10 01:48:39  No: 128774

今回ご回答頂いたみなさん、ありがとうございました。QA掲示板の回答と両方参考にさせてもらいながら解決することが出来ました。

intCnt = 0
For intI = 1 To ListView1.ListItems.Count
    If ListView1.ListItems(intI).Selected = True Then
            intCnt = intCnt + 1
    End If
Next

で解決できました。

intIの部分がインデックスだったのに気づきませんでした。
今回Blueさんからご指摘いただきましたマルチポストの件につきましてはみなさんに大変ご迷惑おかけいたしました。以後気をつけますので、また困ったときはお力添えお願いします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加