RANDOM IF...THEN...ELSE
Neu
canvas.Brush.Color := random($ffffff); | Hintergrundfarbe für den Text (hier zufällige Hexadezimalzahlen) |
canvas.Font.height := 30; | Größe der Schrift |
canvas.font.color :=clblack; | Schriftfarbe |
canvas.textout (zaehler * 40 , 410 , zahl); | Textausgabe(x, y, Text) |
unit Zufall;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons;
type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Label3: TLabel; Label4: TLabel; Edit2: TEdit; Label5: TLabel; Label6: TLabel; Button1: TButton; BitBtn1: TBitBtn; Label7: TLabel; BitBtn2: TBitBtn; Label8: TLabel; Label9: TLabel;
procedure BitBtn1Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end;
var Form1: TForm1; zaehler, random_zahl, eingabe_zahl : integer; name :string[10]; zahl : string[6];
implementation
{$R *.DFM}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin zaehler := 0; randomize; random_zahl := random(100); name := edit1.text; label5.caption := 'Willkommen zum Zahlen raten '+ name; edit2.SetFocus; {Editfeld wird markiert} label7.Caption := ''; canvas.Brush.Color := clsilver; canvas.Pen.color := clsilver; canvas.rectangle(10,410,600,440); end;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit2.setfocus;inc(zaehler); canvas.Brush.Color := random($ffffff); {zufällige Farbe}
if zaehler > 20 then begin edit1.Text := 'Name'; edit2.Text := 'NEU'; Label5.Caption :='Fange bitte noch einmal an, '+ Name; Label7.caption :='20 Versuche sind einfach zu viel, ' +name; end else begin eingabe_zahl := StrToInt(edit2.text); if random_zahl = eingabe_zahl then begin label7.caption := 'Super geraten, '+ name + ', nach ' + IntToStr(zaehler) +' Versuchen'; edit1.text :='Name'; edit2.text := 'NEU'; Label5.Caption :='Starte bitte neu, ' + Name; bitbtn1.caption := 'NEU'; end else if random_zahl > eingabe_zahl then label7.caption := 'Zahl ist zu klein, '+ name else label7.caption := 'Zahl ist zu groß, '+ name; end; canvas.Font.height := 30; canvas.font.color :=clblue; zahl :=' '+ IntToStr(eingabe_zahl)+' '; canvas.textout (zaehler * 40 , 410 , zahl);
end;
procedure TForm1.BitBtn2Click(Sender: TObject); begin close; end;
end.