• ベストアンサー

ListViewの選択、選択解除を行いたい

VB6.0にて開発をしています。 ListViewで複数選択を可能とし、 Ctrl+クリックで選択、選択解除をせずに、クリックのみで選択、選択解除を行いたいです。 その際、複数選択されている場合はクリックした行のみが選択・選択解除される状態にしたいです。 CheckBoxesプロパティで行う方法は見つけられたのですが、 checkboxesプロパティが使用できないため困っています。 なにか方法がありますでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

お使いの VB の SP ( Service Pack ) はいくつでしょうか? もし、SP6 未満であれば、SP6 にアップデートされてみてはいかがでしょうか。 Visual Basic 6.0 Service Pack 6 http://www.microsoft.com/downloads/details.aspx?familyid=9EF9BF70-DFE1-42A1-A4C8-39718C7E381D&displaylang=ja#Overview ↑のアップデートに comctl32.ocx のアップデートが含まれているのかいないのかよくわからないのですが、comctl32.ocx 単独のアップデートを試してみてもいいかもしれません。 Microsoft Visual Basic 6.0 コモン コントロール http://www.microsoft.com/downloads/details.aspx?FamilyID=25437d98-51d0-41c1-bb14-64662f5f62fe&displaylang=ja 新しい comctl32.ocx だとチェックボックスが使用できるのかも、という気がします。(未確認です。) 新しい comctl32.ocx でもダメだったとか、現行の環境は古い comctl32.ocx を使用していてそれに合わせなければならないということでしたら、API を使用すればチェックボックスありのリストビューが使用可能なようです。 ↓は、たまたま見つけた Q&A ですが、「VB6 リストビュー チェックボックス」などで検索をすれば、他にも参考になるページが見つかるかもしれません。 http://oshiete1.goo.ne.jp/qa3175318.html チェックボックスなしで、クリックのみで選択/選択解除を行うのは、かなり難しそうな気がします。

yukari87
質問者

お礼

SP6未満でしたのでアップデートをしチェックボックスを使用してクリックのみでの選択/選択解除ができるようになりました! 参考URLまでありがとうございます!

関連するQ&A

  • ListViewの選択について

    VB6.0を使用しています。 ListViewでlvwReport表示形式でFullRowSelectプロパディで行全体を選択するようにしてあるのですが、一部のカラムが選択されないように見えるのです。 例えば、5カラムあるListViewで、1,2,4,5カラムは選択されているのに、3カラム目だけ選択されてません。選択されない原因かどうかわからないのですが、選択されないように見えるカラムは必ず空白となっています。しかし、他のカラムでも空白の行は存在するのにちゃんと選択されていることもあります。 このような現象をご存知の方がいらしゃいましたら、教えていただけないでしょうか?よろしくお願いいたします。

  • ListViewの行選択について

    ListViewを使っているのですが、チェックボックスのチェックを付けた行全体を選択状態にし(選択状態は1行ずつ)、行をクリックしただけでは選択状態にしたくないのです。 どうすればいいでしょうか?

  • ListView 項目の選択/選択解除について

     ListViewに表示する情報が1件しかないとき、その情報が常に選択された状態なので、 困っています。  1件しかなくても、選択したり、選択を解除したりすることは出来ないのでしょうか?  または、ListViewでは出来ないけど、他のコントロールなら出来ると言う情報があり ましたらぜひ教えてください。  よろしくお願いします。

  • ListViewでの行全体の選択

    ListViewで行を選択すると行全体を選択表示させたい(ウォッチウィンドウのような感じです)のですが、方法がわかりません。 Helpを見るとFullRowSelectプロパティを使うとかかれてありますが、実行時にそんなプロパティはないとエラーになります。 SubItemsも含む行全体を選択表示させる方法を教えてください。

  • ListViewの複数選択について

    こんにちは。 VBAでListViewを使い、DBの情報を出力しているのですが、ListViewに出力すると、必ず、1行目が選択されています。その選択自体はいいのですが、選択されているところに色付けがされていないのです。他のところを選択すると色がちゃんと付きます。どうすれば、最初の選択行に色をつけることが出来るのか教えてください。 それから、ListViewで複数件選択された場合のIndexの取り方を教えてください。今は以下のようにして1件だけは取得できています。 s = Userform2.ListView1.SelectedItem.Index 初心者なので、なるべく詳しくお願いします。

  • ListViewについて

    いつもお世話になっています。 タイトルの通り、ListViewについて2つ質問があります。 (1)ListViewにDBから検索したデータを代入してますが、動きが遅いんです。  各項目ごとで色を変更したりするためだと思いますが、ListViewの表示を速くする方法はなにかありませんか?  ちなみに今は、ListViewを2枚使って、データをセットしている間は、VisibleをFalseにして、  データセットが完了した時点で、Trueに切り替えています。 (2)(1)の動きで、ListViewを使っているところ、今表示されているListView(Iとします)で  クリックしたデータを次に表示させるListView(IIとします)に引き継がせたいです。  Iで、選択している行をIIで選択状態にすることはできたのですが、  Iで選択している行がスクロールして下にあった場合、IIでもスクロールした場所に  ListViewを移動させたいのですが、その方法が分かりません。 何かご存知の方がいましたら、教えてください。 よろしくお願いいたします。

  • ListViewで表示されたデータの選択行指定

    ListViewで複数行データが表示されている場合に指定の行を選択状態にする事は可能なのでしょうか?いろいろ調べているのですが分かりません。ご存知の方いらっしゃいましたらよろしくお願いします。

  • gridViewの行選択解除

    gridViewの行選択解除 windowsのvb.netでgridviewを使用しております。 ページを読み込んだ際にgridViewにデータを表示するのですが gridViewの先頭行が選択状態のまま表示されてしまいます。 未選択状態にすることは可能なのでしょうか? お分かりになる方がいらしゃいましたらよろしくお願い致します。

  • .netのListView

    暇な時にでも回答お願いします。 VB.NETで開発をしています。 ListViewの列幅を変更できないようにしたいのですが、そのような事は可能でしょうか? 可能であるならば、方法を教えて下さい。 よろしくお願いします。

  • ListViewの使い方

    windows2000(sp3) vb6.0(sp5) で開発中です。 ListViewのチェックを付ける機能を使っているのですが、 ある処理中はチェックを付けさせたくありません。 そこで、ListViewのEnabled=Falseとしたら、ListView が灰色で表示され、かっこ悪くなってしまいました。 Enabledのほかに、チェックを付けさせない様にする方法 はないでしょうか? ご存知の方がいらっしゃいましたら、ご教示願います。 よろしくお願いいたします。