コンボボックスのドロップダウンを無効にする

解決


我輩  2004-12-26 04:44:20  No: 87592

Windows2000、VB6(SP6)の環境です。
標準コンボのドロップダウンを無効にする方法は無いのでしょうか?

やりたいことは、

1)画面展開に応じて、そのコンボのロックをかける・かけないを制御する
2)ロックをかけた際、▼をクリックしてもプルダウンしない。つまり、クリックを無効にしたい

なにか、良い方法はないものでしょうか?


takeq  URL  2004-12-26 05:17:04  No: 87593

無効、有効にするだけなら、
Combo1.Enabled=false   無効
Combo1.Enabled=true    有効
を切り換えて使うのは、だめでしょうか?


じゃんぬねっと  URL  2004-12-26 06:02:33  No: 87594

普段は ComboBox だけど、
ある機会だけ、ComboBox の役割を果たしたくないのなら、
その時だけ、ComboBox を非表示にして、TextBox に変えてみるとか。


我輩  2004-12-26 07:22:17  No: 87595

早速のレス、有難うございます。

Enabledは、項目が薄くなるので駄目なのです。
TextBoxの切り替えは、見た目が変わるので駄目です。
システムの仕様上、こればっかりはどうしようもないのです。
やっぱり、無理なのでしょうか?


魔界の仮面弁士  2004-12-26 09:53:21  No: 87596

枠無しのPictureBoxの上に載せておいて、
コンテナ側のPictureBoxのEnabledを変更するとか。


魔界の仮面弁士  2004-12-26 10:04:36  No: 87597

> 1)画面展開に応じて、そのコンボのロックをかける・かけないを制御する
これだけなら、Lockedプロパティで十分ですね。

> 2)ロックをかけた際、▼をクリックしてもプルダウンしない。つまり、クリックを無効にしたい
これは、上に書いた「コンテナを使用不可にする」事で実装できますが、
「使えない」という事が、ユーザーにわかりにくくなってしまうので、
ユーザーインターフェイスとしては、不親切な物になってしまいますね。

淡色表示が見にくいというなら、せめて、ComboBoxのBackColorを、
vbButtonFace / vbWindowBackground に切り替えるなど、
「変更不可である事」を伝える工夫をした方が良いかも。

# まぁ、余計なお世話かも知れませんが。(^_^;)


我輩  2004-12-26 23:40:46  No: 87598

魔界の仮面弁士さん、ご回答有難うございます。
変更不可の時は、もともと背景色の変更をしているので問題ないです。
コンテナコントロールを使えばできました。
有難うございます。

takeqさん、じゃんぬねっとさん、魔界の仮面弁士さんお忙しい中ご親切に有難うございました。


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

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






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