![]() |
Undeclared Identifier bei TRadioButton
Hallo Delphipraxisler,
ich habe gerade mit einem - in meinen Augen - eher komischen Problem zu tun. Ich schreibe grad ein kleines Programm. Zur Abfrage von einem Gamepad benutze ich ein Codeschnipsel der zur einfachereren Erklärung eine Checkbox markiert oder eben wieder nicht. Wenn ich den Status abfrage bzw ändern will, behauptet der Compiler aber: [DCC Error] AudreyMain.pas(219): E2003 Undeclared identifier: 'RadioButton1' Was - so weit ich es verstehe - bedeutet, dass RadioButton1 nicht definiert wurde. Dies ist aber der Fall, sodass irgendwo ein anderer Haken sein muss, den ich nicht finde. Weiterhin meldet er, dass Checked auch undeklariert wäre. :wiejetzt: Hat wer eine Idee? danke schon mal Thorben
Delphi-Quellcode:
unit AudreyMain;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ShellApi, IniFiles, MMSYSTEM, ExtCtrls; type TForm2 = class(TForm) Timer1: TTimer; Label1: TLabel; Label2: TLabel; Button1: TButton; Label3: TLabel; Label4: TLabel; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Label5: TLabel; Button8: TButton; Button9: TButton; Button10: TButton; Button11: TButton; StatusBar1: TStatusBar; RadioButton1: TRadioButton; RadioButton2: TRadioButton; RadioButton3: TRadioButton; procedure Button1Click(Sender: TObject); procedure Label2Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button10Click(Sender: TObject); procedure Button11Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form2: TForm2; implementation uses NewAds, ABOUT; {$R *.dfm} //[...jede Menge Prozeduren...] var MyJoy: TJoyInfo; ErrorResult: MMRESULT; begin ErrorResult := joyGetPos(joystickid1, @MyJoy); if ErrorResult = JOYERR_NOERROR then begin RadioButton1.Checked := (MyJoy.wbuttons and joy_button1) > 0; RadioButton2.Checked := (MyJoy.wbuttons and joy_button2) > 0; if RadioButton1.Checked = True Then begin //BUTTON 1 gedrückt end else begin //Zurücksetzen end; if RadioButton2.Checked = True Then begin //BUTTON 2 gedrückt end else //Und zurück end else case ErrorResult of MMSYSERR_NODRIVER: ShowMessage('Kein Joystick Treiber installiert.'); MMSYSERR_INVALPARAM: ShowMessage('Falsche Joystick Paramameter.'); JOYERR_UNPLUGGED: ShowMessage('Joystick ist nicht angeschlossen.'); else ShowMessage('Unbekannter Fehler.'); end; end. |
Re: Undeclared Identifier bei TRadioButton
Moin Thorben,
erst einmal herzlich willkommen hier in der Delphi-PRAXiS. Damit RadioButton1 definiert ist, muss er in einer Methode des Formulares benutzt werden, auf dem er sich befindet, oder Du musst halt noch das Formular mit angeben. Leider gibt Dein Codeausschnitt es gerade nicht her, ob es sich hier nun um eine Methode des Formulares handelt, oder eine "normale" Prozedur/Funktion. |
Re: Undeclared Identifier bei TRadioButton
Welche ist die Zeile 219?
|
Re: Undeclared Identifier bei TRadioButton
Zitat:
Mindestens sollte der Codeschnipsel bestandteil eines OnClick-Ereignisses eines Buttons oder ähnlichen sein und nicht wild in die Unit kopiert sein. |
Re: Undeclared Identifier bei TRadioButton
|
Re: Undeclared Identifier bei TRadioButton
Hallo,
danke für die schnelle Hilfe. Zeile 219 lautet RadioButton1.Checked := (MyJoy.wbuttons and joy_button1) > 0; Das mit dem Codeschnipsel wild kopieren ist natürlich wahr, aber manchmal geht der Ehrgeiz mit einem durch. Ich entschuldige mich und gelobe Besserung. Für den Rest denke ich mit Christians Antwort am besten klarzukommen. Ich hab zwar jetzt noch keine Lösung in Codeform, aber einen Ansatz, und markiere daher den Post mal als geklärt. Vielen Dank Thorben |
Re: Undeclared Identifier bei TRadioButton
Steht der Code in einer Methode?
|
Re: Undeclared Identifier bei TRadioButton
Nein :oops:
|
Re: Undeclared Identifier bei TRadioButton
Dann ändere das oder schreibe das Formular davor
|
Re: Undeclared Identifier bei TRadioButton
Arghs, wie ärgerlich, wenn ein Tippfehler manchmal die Lösung ist. Vielen, lieben Dank.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:03 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