Autor Beitrag
arnes
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Di 25.11.08 19:32 
hey
ich hab folgendes problem:
ich weise 5 Buttons über einen Array[0..4] of boolean
entweder enabled := true oder enabled := false zu.
mit einem normalen array funktioniert das wunderbar,
packe ich aber den array in einen record gibt delphi folgende Fehlermeldung aus:
E2096 Methodenbezeichner erwartet.
auch aus der delphi Hilfe über den Fehlertyp bin ich nicht schlau geworden.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
type
  TButtonSettings = record
    EnabledBut :array[0..4of boolean;
end;

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
procedure TForm1.CheckBox1Click(Sender: TObject);
var
  s :string;
begin
  s := (sender as TCheckBox).Name;
  if (sender as TCheckBox).checked = false then
    begin
      TButtonSettings.EnabledBut[StrToInt(s[9])-1] := false;
    end else begin
      TButtonSettings.EnabledBut[StrToInt(s[9])-1] := true;
    end;
end;


das gleiche passiert auch bei einer einfachen zuweisung des arrays:
ausblenden Delphi-Quelltext
1:
TButtonSettings.EnabledBut[0] := false;					


woran könnte das liegen?
gruß arnes
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Di 25.11.08 19:45 
probiers mal so:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TForm1.CheckBox1Click(Sender: TObject);
var
  s :string;
  buttonsetting1: TButtonSetting;
begin
  s := (sender as TCheckBox).Name;
  if (sender as TCheckBox).checked = false then
    begin
      ButtonSetting1.EnabledBut[StrToInt(s[9])-1] := false;
    end else begin
      ButtonSetting1.EnabledBut[StrToInt(s[9])-1] := true;
    end;
end;


lg elundril

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
arnes Threadstarter
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Di 25.11.08 20:16 
vielen Dank für die schnelle Antwort
also es hat zwar funktioniert , aber nicht so wie es sollte
hab anschließend das
ButtonSetting1 :TButtonSetting;
am Anfang in
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
implementation

{$R *.dfm}

type
  TButtonSetting = record
    EnabledBut :array[0..4of boolean;
end;

var
  ButtonSetting1 :TButtonSetting;

geschrieben und nun funktioniert es wunderbar
gruß arnes
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Di 25.11.08 20:48 
:oops: stimmt, mein fehler, wenn du es global verwenden willst (in der gesamten unit oder programm) musst du es auch global definieren.

lg elundril

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.