comboboxでText入力を制御するには?

解決


yasu  2004-06-21 23:15:18  No: 9545

いつもお世話になっております。

初歩的な質問なんですがcomboboxでプロパティのStyleを
csDropDownにしてTextに直接書込みができないようにする
にはどのようにすればよろしいのでしょうか?

素直にcsDropDownListを使えばよいのかもしれないのですが
DBから取得した値をcsDropDownListだとできませんでした。
csDropDownだとできます。
処理としてはcomboboxのリストから選択してDBに更新するので
すが選択しないcomboboxもなんらかの文字を渡して更新する
ため、comboboのTextに初期表示として表示させているのですが
その文字を直接変更できないようにしたいです。

文章がわかりづらいかもしれませんがお願いいたします。


るるとん@K  2004-06-22 00:40:37  No: 9546

>DBから取得した値をcsDropDownListだとできませんでした。
Items.Textを書き換えてはどうでしょうか?


yasu  2004-06-22 04:11:01  No: 9547

るるとん@Kさん  いつもありがとうございます。

Items.Textで書き換えてやってみたのですだめでした。
私のやり方が悪いのかもしれませんがどのようにやっても
comboboxのTextに表示されません。

やはりcsDropDownでやるのは面倒なのでしょうか?


るるとん@K  2004-06-22 06:13:08  No: 9548

ItemIndexの値は有効ですか?


るるとん@K  2004-06-22 06:19:46  No: 9549


with Combobox1 do
begin
items.insert(0,'てすと');
itemindex := 0;
end;


@っしー  2004-06-22 07:53:39  No: 9550

ComboBoxのOnKeyPressイベントを以下のように全てのキー入力を無効にするのではダメでしょうか?

procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
  key := #0;
end;

お役に立てれば幸いです。


yasu  2004-06-22 19:20:50  No: 9551

るるとん@Kさん、@っしーさんありがとうございます。

ItemIndexもやってみたのですがやはりうまくいかず
OnKeyPressで私がやりたかったことが実現できました。

お二人ともいろいろありがとうございました。


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

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






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