Einzelnen Beitrag anzeigen

Tobicaster

Registriert seit: 12. Nov 2007
29 Beiträge
 
#1

Ratespiel, Zahlen 1-9 mit RadioButtons

  Alt 16. Nov 2007, 19:46
Ich möchte, dass der Wert (Caption) des angeklickten RadioButtons in die Variable radiobutton geschrieben wird.
Wie kann ich da vorgehen?

Vielen Dank schonmal!

Delphi-Quellcode:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    LblZahl: TLabel;
    BtnEnde: TButton;
    BtnNeu: TButton;
    BtnPruefe: TButton;
    LblHeadline: TLabel;
    RBtn1: TRadioButton;
    RBtn2: TRadioButton;
    RBtn5: TRadioButton;
    RBtn3: TRadioButton;
    RBtn4: TRadioButton;
    RBtn6: TRadioButton;
    RBtn8: TRadioButton;
    RBtn9: TRadioButton;
    RBtn7: TRadioButton;
    procedure FormCreate(Sender: TObject);
    procedure BtnPruefeClick(Sender: TObject);
    procedure BtnEndeClick(Sender: TObject);
    procedure BtnNeuClick(Sender: TObject);

  private
    zahl, radiobutton: integer;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
randomize;
zahl := random(8) + 1;
{Jetzt: Alle RadioButtons entchecken}
LblZahl.Caption := 'Errate mich!';
end;

procedure TForm1.BtnPruefeClick(Sender: TObject);
begin
  radiobutton := {StrToInt vom RBtn.Caption, wo RBtn.Checked = true ist}
    if radiobutton < zahl then
      LblZahl.Caption := IntToStr(radiobutton) + '? Nee, größer'
    else
    if radiobutton > zahl then
      LblZahl.Caption := IntToStr(radiobutton) + '? Nee, kleiner'
    else
      begin
      LblZahl.Caption := 'Richtig! Es ist die ' + IntToStr(zahl);
      ShowMessage('Alter, du hast es voll drauf!');
      end;
end;

procedure TForm1.BtnNeuClick(Sender: TObject);
begin
  Form(sender);
end;

procedure TForm1.BtnEndeClick(Sender: TObject);
begin
  close;
end;

end.
  Mit Zitat antworten Zitat