Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Sorry, dass ich da noch einmal nachfragen muss.
procedure TDesign.Design_LogIn;
var
BList: TObjectList;
begin
BList:= TObjectList.Create;
BList.OwnsObjects:= false;
Try
BList.Add(Form_LogIn.btn_login_abbruch);
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Es funktioniert!
Ich verstehe zwar nicht, warum es gerade nicht funktioniert hat, aber ich habe Folgendes geändert:
Aus der Procedure Create_frmLogIn habe ich das Design.Design_LogIn gelöscht.
procedure TForm_NMain.Create_frmLogIn;
begin
ShowMessage('7 Create FrameLogin');
if not Assigned(Form_LogIn) then begin
ShowMessage('7.1 TForm_LogIn.CreateNew');
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Also,
ShowMessage('7.1 TForm_LogIn.CreateNew'); hat 7.1 ... korrekt angezeigt.
ShowMessage(Form_LogIn.ClassName); hat TForm_LogIn ausgegeben
ShowMessage(Form_LogIn.btn_login_abbruch.ClassName ); hat wieder zu einem Error geführt:
Wenn ich die Autovervollständigung nutze , dann erkennt Delphi den btn_login_abbruch und zeigt auch an, dass es ein TTMSFNCToolBarButton ist. Aber auf den...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Er springt nach else und gibt "Not assigned" aus...
for I := 0 to FListe_Button.Count -1 do begin
ShowMessage(FListe_Button.Items.ClassName);
if Assigned(FListe_Button.Items) then
ShowMessage(FListe_Button.Items.ClassName)
else
ShowMessage('Not assigned');
if FListe_Button.Items is TTMSFNCToolBarButton then
ShowMessage('OK')
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Wahrscheinlich liegt hier der Fehler. Ich habe gerade mal getestet, ob ich in der Procedure, die die Buttons in die Liste packt, den Button.Name abgreifen kann. Das Ergebnis war wieder der gleiche Error...
Hier der Aufbau meines Programm-Starts. Ich habe die richtige Reihenfolge mit den nummerierten ShowMessages abgeprüft!
Form_NMain
implementation
uses
Form_LogInUnit,...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Wie es aussieht, ist das Objekt schon wieder weg... :shock:
for I := 0 to FListe_Button.Count -1 do begin
if Assigned(FListe_Button.Items) then
ShowMessage(FListe_Button.Items.ClassName)
else
ShowMessage('Not assigned');
end;
Ergebnis lautet: Not assigned...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Der Fehler tritt aber auf, sobald ich versuche auf ein Objekt zuzugreifen.
MyButton:=FListe_Button.Items as TTMSFNCToolBarButton; //Das funktioniert noch
ShowMessage(MyButton.Name);//Hier knallt es
Ich habe alle Schritte davor getestet!
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
10. Dez 2019
Guten Morgen Zusammen,
vielen Dank für die Unterstützung. Leider klappt es noch immer nicht...
Ich habe jetzt Folgendes gemacht:
Type
TDesign=class
private
FListe_Button: TObjectList;
constructor TDesign.Create;
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
9. Dez 2019
Okay, vielleicht habe ich einen Denkfehler:
procedure TDesign.Design_LogIn;
var
BList: TObjectList;
begin
BList:= TOBjectList.Create; //Ich erstelle die Liste
Try
BList.Add(Form_LogIn.btn_login_abbruch); //Packe die Buttons rein
BList.Add(Form_LogIn.btn_login_ok);
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
9. Dez 2019
Leider funktioniert das auch nicht. Ich bekomme wieder eine Fehlermeldung:
Welche Vorgehensweise würdest Du denn für gut befinden? Ich bin da für Anregungen sehr offen!
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Ykcim,
9. Dez 2019
Hallo Zusammen,
vielen Dank für die vielen guten Anregungen. Ich habe zuvor noch nie mit einer TObjectList gearbeitet und habe daher davon keine wirkliche Ahnung.
Ich habe gerade versucht Generics.Collections in meine uses einzufügen. Ich habe noch nicht erwähnt, dass ich das Projekt gerade als Web-Application mit TMS-WebCore umsetzen möchte. Da scheinen die Generics.Collections nicht...