さて、Delphi における基本的な操作は、十分身に付いたと思います。この先、for 文は、こうで...、case 文はこうで...、 といった単純に文法に関する説明が続きます。こういった解説は、余り面白いと思わないかもしれません。しかし、プログラミングをする上で for、if、case などは最低限、身につけなければなりません。
そこで、まず最初は、そういった細かい文法などは気にせずに「こんなことが出来ます」というのを中心に考えて、簡単なプログラムを組んでみたいと思います。大事なのは文法ではなくて、どのような事ができるのか、という点に注目して下さい。
1 番初めに「 Hello world ! 」とメッセージを表示させることをやりました。それでは今度は、自分の名前を実際に入力して、それを表示させるようにして見ましょう。ここでは、Edit、Button を使ってやってみます。Standard ページにある Edit、Button をフォームに貼り付けて下さい。
それぞれ Standard ページにあります。
Edit と Button を張りつけます。
それでは Edit に入力された文字が、ボタンを押すと表示されるようにプログラムを書いて見ましょう。フォームに貼り付けたボタンをダブルクリックしてください。
procedure TForm1.Button1Click(Sender: TObject); var s: string; begin s := Edit1.Text; ShowMessage(s); end;
プログラムをコンパイルして実行させて、ボタンを押してみると、見事 Edit に入力した自分の名前を表示できるようになりました。それでは今度は、その入力された文字を 3 回連続で表示させてみましょう。繰り返しになりますが、ここでは細かい文法にとらわれずに、何をしようとしているのか、という点に注目して下さい。
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; s: string; begin s := Edit1.Text; for i := 1 to 3 do ShowMessage(IntToStr(i) + ' 回目 ' + s); end;
これで、3 回表示することが出来ましたけれど、ちょっと物足りないですね。それぞれに対して、独自のメッセージを追加してみましょう。
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; s: string; Greeting: string; begin s := Edit1.Text; for i := 0 to 2 do begin case i of 0: Greeting := 'おはよう'; 1: Greeting := 'こんにちは'; 2: Greeting := 'こんばんは'; end; ShowMessage(s + ' さん。' + Greeting); end; end;
特定のメッセージを追加することも出来ました。せっかくですから、Edit に入力した文字が何か特別なものだったら、それに反応してフォームの色を変えるようにして見ましょう。ここでは Edit に「 Delphi 」と入力された場合にフォームの色が変わるようにしてみます。
procedure TForm1.Button1Click(Sender: TObject); var s: string; begin s := Edit1.Text; if s = 'Delphi' then Color := clBlue; end;
実行しましたら、Edit に「 Delphi 」と入力してみて下さい。その後でボタンを押すと、なんとフォームの色が変わってしまいます!こんなに簡単に出来てしまいました。この勢いで、もうちょっと凝った設計にしてみます。今度は、入力された文字が「 Delphi 」ではなく「 Kylix 」だった場合には、色を赤に変更して「 Delphi 」でも「 Kylix 」でもない場合には、色を白にしてみましょう。
procedure TForm1.Button1Click(Sender: TObject); var s: string; begin s := Edit1.Text; if s = 'Delphi' then Color := clBlue // ; がありません! else if s = 'Kylix' then Color := clRed // ; がありません! else Color := clWhite; end;
駆け足ですが、プログラミングの基本的なものを一通り体験しました。