Autor |
Beitrag |
FaFu
Hält's aus hier
Beiträge: 6
|
Verfasst: Do 20.11.08 16:30
Hallo,
Ich würde gerne ein Shape erstellen und diesem Shape eine OnClickProzedur zuweisen oder OnMouseDown , halt was womit man was auslösen kann, wenn ich daraufklicke.
Und zwar hab ich um die 20 Shapes die mit der Laufzeit über BlaShape[i] := TShape.Create(Self) gemacht werden usw. was auch funktioniert. Nun will ich, dass jedem dieser Shapes für i := 1 to 20 eine Prozedur zugewiesen wird die nur ausgelöst wird wenn ich auf das Shape klicke. Ich würde das ganze gerne ohne Hook machen also nur mit bereits in Delphi vorhandenen Befehlen.
Kann einer helfen?
mfG
|
|
FaFu 
Hält's aus hier
Beiträge: 6
|
Verfasst: Do 20.11.08 16:32
Eigentlich ist die procedure ja schon vorhanden, nur weiß ich nicht wie ich sie ändern kann. . .
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Do 20.11.08 16:34
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
FaFu 
Hält's aus hier
Beiträge: 6
|
Verfasst: Do 20.11.08 16:56
Na ja das Problem ist, dass wenn ich Array benutze ich ja [] benutze und das funktioniert dann nicht, wenn ich BlaShape[i]OnMouseDown benutze . . .
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Do 20.11.08 16:59
FaFu hat folgendes geschrieben : | Na ja das Problem ist, dass wenn ich Array benutze ich ja [] benutze und das funktioniert dann nicht, wenn ich BlaShape[i]OnMouseDown benutze . . . |
hast du den Punkt zwischen ] und O nun auf Grund eines Tippfehlers vergessen? Falls ja, sag bitte, was *genau* nicht funktioniert (Fehlermeldung?). Falls nein, Punkt rein und das geht
Edit: Falls ja: bitte auch Code posten zwecks fehleranalyse.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
FaFu 
Hält's aus hier
Beiträge: 6
|
Verfasst: Do 20.11.08 17:47
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59:
| type TForm1 = class(TForm) WeissBtn: TButton; Timer1: TTimer; SchwarzBtn: TButton; Timer2: TTimer; BotBtn: TButton; SpielerBtn: TButton; Image1: TImage; Timer3: TTimer; procedure WeissBtnClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure FormActivate(Sender: TObject); procedure SchwarzBtnClick(Sender: TObject); procedure Timer2Timer(Sender: TObject); procedure SpielerBtnClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Timer3Timer(Sender: TObject); procedure test(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); private public end;
var Form1: TForm1; i, k, xy: Integer; p: TPoint; Weiss: Array [0..899] of TShape; Schwarz: Array [0..899] of TShape; implementation
{$R *.dfm}
procedure TForm1.WeissBtnClick(Sender: TObject); begin GetCursorPos(p); SetCursorPos(200,200); i := i + 1; Weiss[i] := TShape.Create(Self); Weiss[i].Parent := Self; Weiss[i].Left := 205; Weiss[i].Top := 185; Weiss[i].Width := 33; Weiss[i].Height := 33; Weiss[i].Shape := stCircle; Weiss[i].Brush.Color := clWhite; Weiss[i].Brush.Style := bssolid; Weiss[i].OnMouseDown := Test; Timer1.Enabled := true; WeissBtn.Hide; end; procedure Form1.Test(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Close; end; |
Das ganze sieht nun so Aus ^^
Das funktioniert nicht ^^ also beim starten kommt folgende Fehlermeldung:
[Error] Informatik.pas(60): Identifier redeclared: 'Form1'
[Error] Informatik.pas(63): '(' expected but ';' found
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Do 20.11.08 18:01
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
FaFu 
Hält's aus hier
Beiträge: 6
|
Verfasst: Do 20.11.08 18:04
Danke ! ! ! ! ! ! ! ! !
Oh man bin ich schusselig ^^ Vielen Dank für die Zeit, die du dir genommen hast
MfG
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Do 20.11.08 18:09
Kein problem, immer gerne 
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|