VB6.0のコンボボックスをStyle=0で使用しています。
AddItemで項目を追加して複数のリスト項目がPullDownメニュー内にあります。
この状態で、任意のリスト項目をDisableの状態にすることは可能でしょうか?
RemoveItemで削除してリスト項目から消すしか方法はないんでしょうか?
環境
OS:Win2000 Visual Basic6.0(SP6)
DISABLEの意味
disable A:Aを無力にする
ここでリストの項目に「効力」を付加しているのは、
プログラマであるEgg Plantさんですよね。
よって、そのリストの項目が効力を失っているかを管理し、
失効していれば無視すればいいのではないでしょうか?
DISABLEの意味はグレーアウトになるという意味で使用しております。
つまり灰色になって表示はされるが、選択はできないという意味です。
項目的には、存在するということを示したいんです。
けれど、ある状況では選択できない方が、そのソフトを使う人には余計な混乱を与えずに親切かと思います。
必要なものだけをリストに追加することも考えましたが、状況によってリスト項目の数や内容が変わると、そのソフトを使う人には混乱の元になりやすいと思ってパスしています。
VB6の ComboBox では、項目の色を変更できません。
代案としては、
(1) ImageCombo で代用する。(テキストを描画した画像を使う)
(2) ComboBox にオーナードローする。(APIの呼び出しが必要)
(3) WebBrowser + <select>要素で代用。
などが考えられます。
魔界の仮面弁士様、ありがとうございます。
時間と労力、その後のサポートを考慮して(1)案で検討して見ようと思います。
どうにもならないときは、また新レスを立てるかもしれませんが、宜しくお願いいたします。
ツイート | ![]() |