ComboBoxでの表示について

解決


Mog Mog Combo!  2003-01-20 07:27:18  No: 2648

初めまして、初心者でわからなくて困っています。
ComboBoxを使って追加入力したものがきちんとできているか
確かめるためにメッセージボックスとラベルを使っているのですが、
始めからItemで記述したものに関してはきちんと表示されるのですが
追加入力したものでは、最初の1文字しか表示されません。
色々とオブジェクトインスペクタをいじっているのですが、一向にらちがあきません。どこを設定しなおせばきちんと表示されるのでしょうか?識者の方いらっしゃればお願いします。プログラムは以下のようにしています。

procedure TForm1.ComboBox1Change(Sender: TObject);
  begin if ComboBox1.ItemIndex = 0 then SAM := ComboBox1.Text; //ここに入力したいのです  Itemは’-------’と入力しています。
        if ComboBox1.ItemIndex = 1 then SAM := 'Au';
        if ComboBox1.ItemIndex = 2 then SAM := 'HOPG';
        if ComboBox1.ItemIndex = 3 then SAM := 'DFU';

  end;

procedure TForm1.Button1Click(Sender: TObject);
  begin  MessageDlg(SAM,mtInformation,[mbOK],0);
         Label1.Caption := SAM;
  end;


Mow Musu?  2003-01-20 14:17:36  No: 2649

「ツジ」ネエネエ、ComboBoxに入力した文字をチェックしたらオカスイんだって。
「カゴ」モー、ツジちゃんたらオカシ食べ過ぎよ。モームスじゃなくて牛(モー)娘じゃん。
「ツジ」そんなさぶい駄洒落言うのダジャレ〜?
「裕子」もー、二人ともふざけとらんと、ちゃんと答えてあげな失礼やろ。
「ツジ」だってぇアタシ指揮者じゃないもん♪って、これもさぶすぎ〜(^^ゞ
「カゴ」ネエ、ComboBoxに入力した文字列の Indexって「0」なの?
「ツジ」え〜?違うよ〜。「-1」じゃん♪
「裕子」そやな。入力した文字列はまだ Add しとらんで、ItemIndexが「-1」ちゅうわけや。んで、こないなふうに直したら確かめられるンちゃうか?

var
  SAM : string;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  case ComboBox1.ItemIndex of
   -1: SAM := ComboBox1.Text;
    0: SAM := '-------';
    1: SAM := 'Au';
    2: SAM := 'HOPG';
    3: SAM := 'DFU';
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  MessageDlg(SAM, mtInformation, [mbOK], 0);
  Label1.Caption := SAM;
end;


Mog Mog Combo!  2003-01-20 21:52:23  No: 2650

なるほど、できました!ありがとうございます。
モームスさん最高です!


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

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






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