• ベストアンサー

VB6 リストビューのサブアイテムをクリックしてそのサブアイテムの値を

VB6 リストビューのサブアイテムをクリックしてそのサブアイテムの値を取得したいのですが、サブアイテムのインデックスの取得方法がわかりません。どうすればいいか教えてください。

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

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

>リストビューのサブアイテムをクリック >サブアイテムのインデックスの取得方法 リストビュー.View=lvwReport ってされているってことですよね? 無理だと思います。 サブアイテムっていうのは、所詮はアイテムの属性を記す付加情報を示すための物だからです。 目的の動作を行いたいのであれば、リストビューを使うのではなく、グリッド系のコントロールを使用した方が良いかもしれませんね。

関連するQ&A

  • リストビューの初期化について

    リストビューのアイテム(編集可能なところ)とサブアイテム(基本的には編集不可のところ)の表示位置(列)をプログラムから変更できるのでしょうか? 一列目にサブアイテム:1 二列目にサブアイテム:0という形にしたいのですが。。。 ご存知の方いらっしゃいましたらお願いいたします。

  • 【vb6】リストビューの複数の項目の削除

    お世話になります。 vb6のリストビューについて質問があります。 リストビューでコントロールキーやシフトキーを押して複数項目を選択したあと 選択された任意の項目だけを削除するというロジックを書きたいと思っています。 ですが、どのようにしたら、例えば1~4行目まである内の 2,4行目だけを削除できるのかが全く解りません。 .selectitem.indexだと選択した最後の行(2,4行を選択したら4行目)が インデックスに帰るので特定の行を取得できずお手上げ状態です。 解りづらい説明で申し訳ありませんが、 どうか教えてください。よろしくお願いします。

  • VB6 リストビューについて

    少し前にVB6で作成したプログラムでファイルの一覧表示にリストビューを使っているのですが、 ディレクトリを移動するたびにListItemsコレクションをクリアしています。 特に今のところ支障なく稼働しているのですが、同じディレクトリに戻ってくると、 以前に作成したコレクションを再取得することになり、なんとなく非効率のように思っています。 クリアせずにaddメソドで追加したコレクションを目的別に表示できれば解決するのですが、 そのような方法があるのかも分かりません。 もし、方法が分かる方がいれば教えて頂きたいと思います。 あるいは設計上感心できないとかの意見も大歓迎いたします。 ちなみにExplorerでTemporary Internet Filesの中身を表示したときは 毎回新規に再取得しているようでした。

  • VB6を使っています。リストビューのカラムヘッダーの色を変えたい。

    VB6を使っています。リストビューのカラムヘッダーの色を変えたい。 リストビューのカラムヘッダーをクリックしたら、そのカラムヘッダーの文字色が変わるとか、又は背景色が変わるとかしてその列が選択されたと判るようにしたいのですが、可能でしょうか? ColumnHeadersにはForecolorとかFontcolorといったものは無さそうなのでどうすればいいか判りません。 別に色にはこだわりません。 太字でもいいです。列がわかればいいのです。よろしくご指導下さい。

  • 【vb6】リストビューへのアイコンの追加

    お世話になります。 vb6のリストビューについて質問があります。 リストビューに作った複数の列(現状はヘッダーで区切っただけの擬似的なもの)に対して、 例えば”1行目の4列目にアイコンを設定する"といった事をやりたいのが方法がわかりません。 グリッドを使えば楽なのは分かっているのですが、今回は見た目の都合上リストビューで作りたいと考えています。 またAPIを使えば画面に絵を貼り付けられるのも承知していますが、そのようなことをしなくても 標準の機能でアイコンを追加することは出来ると昔聞いたもので、APIではない方法を探しています。 どなたかご存知の方がいらっしゃればどうか教えてください。 よろしくお願いします。

  • リストビューに隠しパラメータ

    お世話になります。 現在リストビューに、列幅0の隠し列を用いてデータをやりとりしています。この方法以外に個々の行にパラメータを与えることは可能でしょうか? ウィンドウハンドルにパラメータを与えることでウィンドウプロシージャに値を渡す(やり方忘れました)ように、リストビューの個々の行に値を格納できるのではないかと思うのですが・・・ 宜しくお願いします。

  • Visual Basicでツリービューリストの項目数を増やすには?

    VB4でツリービューコントロールを使ってリストを作成するとある程度以上のノード数になるとindex errorになります。 正確には数えていませんが、感覚的に200行ぐらいです。 この制限を外す方法はありませんか? よろしくお願いします。

  • リストビューのデータと他プロセス

    他のソフトのリストビューを自分のソフトのリストビューにコピーしたいのですが、どう言う方法がよいか教えてください。 システムフックをしてフックの中で他のソフトのリストの値を読むことはできましたが、自分のソフトから渡した自分のリストビューに値を入れることができませんでした。

  • C# 仮想リストビュー

    お世話になります。 仮想リストビューで画像一覧を表示しているのですが、アイテムの選択状態を上手く取得できず困っています。 通常はItems.SelectedImtesで取れるのですが、仮想リストビューだと例外になってしまいます。 そこでOnItemSelectionChangedで取得しようとしたのですが、何故か選択解除のタイミングでイベントが発生しません。仮想リストビューだからなのでしょうか。 とりあえず今はOnDrawItemで取得して変数に保存していますが、今度はスクロールで隠れた画像の選択解除が取得できません。 ですのでOnItemSelectionChangedでShiftキーとCtrlキーの有無を見て、押されていなければ一度全てのアイテムが選択解除されたものとし、その後Invalidate()とUpdate()でOnDrawItemを呼び出しています。 OnDrawItemで現在表示中の場所(クリックしたアイテム。この時は1つだけのはず)の選択状態が取れるので、とりあえずこれで目的の動作は果たしました。 ですがやり方がスマートでない上に、アイテムをクリックする度に画面を更新しているので見た目が悪いです。 何か良い方法は無いでしょうか?

  • リストビューのハンドルについて

    リストビューコントロールのハンドルについて疑問に思う事がありまして、ご教授よろしくおねがいします。 通常リストビューをCreateWindow()で作成した時に戻り値として受け取るウィンドウハンドルに対してSetWindowFont()を行うとリストビュー全体のフォントが変更されます。 リストビュー関数にはListView_GetHeader( リストビューハンドル );という関数が用意されていてリストビューのカラム部分のハンドルを取得できます。 このハンドルに対してSetWindowFont()を行うとカラム部分だけのフォントが変更されます。 という事はアイテム部分だけのハンドルを取得し、SetWindowFont()でフォントを変更する事はできるのでしょうか? ご教授よろしくお願いいたします。

専門家に質問してみよう