お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

""if 〜 then 文" と "case 〜 of 文""





◆説明◆
 条件分岐コードを書いて行く上で、より分かりやすいコードに出来る場合が
あります。
 このサンプルは、3つのアイテムを持つ RadioGroup を2つ用意し、それぞ
れの ItemIndex 値の組み合わせによって異なる処理を行う、という場合のもの
で、サンプルコード1・2共に、同じ動作を行います。

◆サンプルコード1◆ / if 〜 then 文の場合
procedure TForm1.Button1Click(Sender: TObject);
begin
   if RadioGroup1.ItemIndex = 0 then
   begin
      if RadioGroup2.ItemIndex = 0 then
         Button1.Caption := '1番目' else
      if RadioGroup2.ItemIndex = 1 then
         Button1.Caption := '2番目' else
      if RadioGroup2.ItemIndex = 2 then
         Button1.Caption := '3番目';
   end else
   if RadioGroup1.ItemIndex = 1 then
   begin
      if RadioGroup2.ItemIndex = 0 then
         Button1.Caption := '4番目' else
      if RadioGroup2.ItemIndex = 1 then
         Button1.Caption := '5番目' else
      if RadioGroup2.ItemIndex = 2 then
         Button1.Caption := '6番目';
   end else
   if RadioGroup1.ItemIndex = 2 then
   begin
      if RadioGroup2.ItemIndex = 0 then
         Button1.Caption := '7番目' else
      if RadioGroup2.ItemIndex = 1 then
         Button1.Caption := '8番目' else
      if RadioGroup2.ItemIndex = 2 then
         Button1.Caption := '9番目';
   end;
end;

◆サンプルコード2◆ / case 〜 of 文の場合
procedure TForm1.Button1Click(Sender: TObject);
begin
   case RadioGroup1.ItemIndex of
      0: case RadioGroup2.ItemIndex of
            0: Button1.Caption := '1番目';
            1: Button1.Caption := '2番目';
            2: Button1.Caption := '3番目';
         end;
      1: case RadioGroup2.ItemIndex of
            0: Button1.Caption := '4番目';
            1: Button1.Caption := '5番目';
            2: Button1.Caption := '6番目';
         end;
      2: case RadioGroup2.ItemIndex of
            0: Button1.Caption := '7番目';
            1: Button1.Caption := '8番目';
            2: Button1.Caption := '9番目';
         end;
   end;
end;

                                    J-OH!(VEC05267)

Original document by J-OH!       氏 ID:(VEC05267)


ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum