Ich bin gerade dabei ein Interface zu erstellen. Bisher habe ich einen Menümanager programmiert, der die einzelnen Menüs verwaltet. Die Menüs sind Objekte zusammengeschustert aus einem Fensterobjekt und einigen weiteren Objekten unter anderem einem Controlsobjekt, in dem Ich die Tastaturbelegung abspeicher für jedes Menü. Das ganze funktioniert so, dass ich eine Sammlung von Buttonobjekten darin haben, die einmal den Wert der Taste auf der Tastatur speichern und eine "Ausführen" Prozedur beinhalten. Mit dem belegen der tasten und feststellen, wann welche taste in welchem Menü gedrückt wird haut alles hin, allerdings möchte ich jetzt, dass sich auf Knopfdruck der Esc Taste das Programm beendet. Dafür wollte ich der Taste die TForm1.close; zuweisen.
Will Delphi aber nicht.
Ich habe es wie folgt versucht:
Menümanager.getMenü1.getControls.getBtn(0).Execute := TForm1.close; // Ich bin mir nicht sicher ob TForm1 oder Form1 .. hab aber beides versucht und gleiches ergebnis bekommen
Auf Deutsch:
im Menü befinden sich als private die Controls. Damit ich diese ansprechen kann, habe ich eine Funktion als public geschrieben, mit dem Rückgabewert TControls. von dort aus kann ich nun auf den Inhalt von Controls zurückgreifen in diesem Fall das Array der Buttons. Auch dafür habe ich jetzt eine Funktion unter public in die Controls eingearbeitet, mit dem Rückgabewert TButton. Von dort aus kann ich dann auf die Elemente des Buttons zugreifen, unteranderem die leere Procedure "Execute", der ich eine andere Procedure zuweisen will, in diesem Fall Form1.close;
nu sacht Delphi mir, dass ich der linken Seite keine Procedure zuweisen darf.
Wer mehr ahnung hat von Delphi oop als ich (mach ich noch nicht so lange), dem sei schon jetzt zu danken, wenn er mir hilft.. (natürlich auch den anderen, die sich das hier durchlesen).
Wer sich fragt, warum ich hier im Forum anfrage: Ist natürlich ne OpenGL Anwendung;
_________________ ist Ihnen schon mal aufgefallen, dass wenn Sie beim Wort Schlagersängerinnen die ersten 6 Buchstaben streichen, das 'e' durch ein 'f' ersetzen, die nächsten 7 Buchstaben rückwärts lesen und dann ebenfalls elemenieren und zusätzlich die beiden nebeneinanderstehenden n's durch ck ersetzen, das Wort 'ficken' ergibt?
hätte nicht gedacht, dass es so einfach wäre.. hatte damals bei nem TImage (als Ogl noch weit entfernt war) mal festgestellt, dass man proceduren zuweisen kann. Wie das jedoch genau funktioniert hab ich nicht geschnallt. Nu klappts aufjedenfall, musste zwar noch einige andere logische Fehler beheben ... aber es läuft.. Dange Dange!!
(neben bei hat mich das daran erinnert, dass ich in die Controls noch mächtig viele funktionen etc. einbauen muss)
_________________ ist Ihnen schon mal aufgefallen, dass wenn Sie beim Wort Schlagersängerinnen die ersten 6 Buchstaben streichen, das 'e' durch ein 'f' ersetzen, die nächsten 7 Buchstaben rückwärts lesen und dann ebenfalls elemenieren und zusätzlich die beiden nebeneinanderstehenden n's durch ck ersetzen, das Wort 'ficken' ergibt?
Mitglieder in diesem Forum: Google [Bot] und 1 Gast
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.