![]() |
Radio Group - Radio Button Abfrage???
Ich habe folgende Probleme:
1. Bei mir funktioniert der Befehl "radiogroup1.ItemIndex:=-1;" zum deaktivieren der Auswahl aller Radiobuttons in einer Radiogroup nicht. Es kann an nichts anderem liegen, da ich ein Programm nur mit dieser Programmzeile geschrieben habe bei dem bei einem klick auf einen button "radiogroup1.ItemIndex:=-1;" ausgefürt werden soll. 2. die einbindung von "radiogroup1.ItemIndex:=0;" in eine if bedingung if (RadioGroup1.ItemIndex:=0) and (a>=0) and (a<=99)then begin c:=5; edit4.text:=inttostr(d); end Bei dieser if abfrage wird ein fehler bei dem 2. and und bei begin angezeigt und ich weiß absolut nicht warum. Es kann aber nicht an der Struktur an sich liegen, da ich dieselbe If-Abfrage auch mit etwas anderem für "radiogroup1.ItemIndex:=0;" versucht habe (if b=0 oder was auch immer), und da hat es geklappt. Ich bitte um Hilfe |
Re: Radio Group - Radio Button Abfrage???
Delphi-Quellcode:
// falsch: Zuweisung mit := innerhalb der If-Bedingung
if (RadioGroup1.ItemIndex:=0) and (a>=0) and (a<=99)then // richtig - vor "then" sollte ausserdem ein Leerzeichen stehen if (RadioGroup1.ItemIndex=0) and (a>=0) and (a<=99) then |
Re: Radio Group - Radio Button Abfrage???
Bei = statt := wird mir bei "RadioGroup1.itemindex=-1" ein Fehler angezeigt.
Bei "RadioGroup1.itemindex=0" wird zwar kein Fehle angezeigt, aber die Variable wird nicht ausgegeben.
Delphi-Quellcode:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Stueckzahl: TLabel; Einzelpreis: TLabel; Grundpreis: TLabel; Rabattsatz: TLabel; Rabatt: TLabel; Endpreis: TLabel; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Edit6: TEdit; RadioGroup1: TRadioGroup; RadioButton1: TRadioButton; RadioButton2: TRadioButton; RadioButton3: TRadioButton; procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; //Stueckzahl a: integer; //Einzelpreis b: integer; //Grundpreis c: integer; //Rabattsatz d: integer; //Rabatt e:integer; //Endpreis f: integer; implementation {$R *.dfm} procedure TForm1.Button3Click(Sender: TObject); begin close; end; procedure TForm1.Button2Click(Sender: TObject); begin edit1.Clear; edit2.Clear; edit3.Clear; edit4.Clear; edit5.Clear; edit6.Clear; RadioGroup1.itemindex:=-1; end; procedure TForm1.Button1Click(Sender: TObject); begin //Errechnung des Grundpreises a:=strtoint(Edit1.text); b:=strtoint(Edit2.text); c:=a*b; edit3.text:=inttostr(c); //Bestimmung des Rabattsatzes //Neukunde if (RadioGroup1.ItemIndex=0) and (a>=0) and (a<=99) then begin d:=5; edit4.text:=inttostr(d); end end; end. |
Re: Radio Group - Radio Button Abfrage???
hoi,
kann es sein das du
Delphi-Quellcode:
die TRadioButton auf deiner TRadioGroup hast und versuchst diese auszuwerten ?
...
RadioGroup1: TRadioGroup; RadioButton1: TRadioButton; RadioButton2: TRadioButton; RadioButton3: TRadioButton; ... das könnte vllt. erklären warum hier nix passiert Zitat:
Wenn dem so ist, erstelle deine TRadioGroup Elemente im OI über 'Items' und lösch die TRadioButton. Dann solltest Du die Elemente auch auswerten können. cya |
Re: Radio Group - Radio Button Abfrage???
RadioGroup1.itemindex:=-1; deselecktiert ja erst einmal alle RadioButton in der Gruppe.
Bist du sicher das bevor Button 1 angeklickt wird ein RadioButton gewählt wurde ? ICh würde den ersten vorselektieren.
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin edit1.Clear; edit2.Clear; edit3.Clear; edit4.Clear; edit5.Clear; edit6.Clear; RadioGroup1.itemindex := 0; // <--<< end; ... Und bitte fasse deine Quelltexte in Delphitags (der Button "Delphi-Code") |
Re: Radio Group - Radio Button Abfrage???
Bitte nochmal eine Erklärung für Anfänger.
Wo ist der "OI" und wo muss ich dort über Items die Radiogroup oder die Radiobuttons hinzufügen. muss ich erst den radiobutton auswählen und jedem radiobutton dann manuell einen itemindex zuweisen? Dann müsste ich der Radiogroup ja auch irgendwo den Itemindex -1 zuweisen. Eigentlich hab ich es so gelernt das die Radiogroup automatisch den Itemindex -1 wenn kein Button ausgewählt ist und Radiobutton nr.1 dann itemindex 0 nr.2 itemindex 1. Ich habe in der Leiste einfach nur eine Radiogroup erstellt und dan Radiobuttons "reingezogen" Muss ich die Buttons der Group noch irgendwie zuweisen oder was ist mein Fehler? |
Re: Radio Group - Radio Button Abfrage???
OI ist der Objektinspektor. In diesem fügst Du unter der Eigenschaft "Items" die Radiobuttons hinzu, damit diese über den ItemIndex ansprechbar sind.
|
Re: Radio Group - Radio Button Abfrage???
Habe jetzt kein Delphi hier,
aber ich denke so müsste es auch gehen:
Delphi-Quellcode:
EDIT:
case TRadioGroup(Sender).ItemIndex of // Oder eben "case TRadioGroupN.ItemIndex of"
0: begin end; 1: begin end; // usw end; Habe jetzt erst richtig verstanden worum es geht :D ^^ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz