Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - MDIChilds im MDIForm als Buttons


UGrohne - Mo 25.11.02 02:58
Titel: MDIChilds im MDIForm als Buttons
Hallo,
ich möchte, dass sobald ein MDI-Child erzeugt wird, ein Button (z.B. in einer ActionBandToolBar) erzeugt wird, mit dem man das Fenster fokusieren kann, beim Schließen des Fensters soll er natürlich wieder entfernt werden.

Hat jmd eine Idee?

Danke


UGrohne - Di 03.12.02 16:21

Hmm, hat keiner eine Idee dazu? Schade.... wäre echt praktisch, bestimmt auch für andere


Delete - Mi 04.12.02 17:04

Moin !

du kannst doch einfach beim erstellen
des MDIChilds einen Action-Button dynamisch erstellen ...
diesem kann man dann auch gleich eine prozedur zuweisen, die
per Sender (Name + Tag kann man auch festlegen wie du wissen solltest, und damit kann man toll dinge regeln) das richtige Formular fokussieren.

Etwa wie

Wenn der Button den Namen des Formulars erhält, sähe das so aus
TForm(FindComponent(TButton(Sender).Name)).BringToFront bzw. SetFocus.

weis die Syntax nicht so genau, aber die Idee sollte klar sein !


UGrohne - Fr 06.12.02 21:11

Die Idee is natürlich gut, hab auch versucht das umzusetzen, mit ein paar Änderungen:
1. Der Button steckt in der zu erstellenden Form
2. Die Anzeigeprozedur steckt auch da drin, dann hab ich net den Umweg über FindComponent

Aber wie Du in
http://www.auq.de/viewtopic.php?t=4695 sehen kannst, gibts beim Button einsetzen kleine Problemchen, den zeigts net an.

Vielleicht weißt Du ja noch was dazu....

Danke. Gruß[/url]


Renegade - Sa 07.12.02 11:41

Moin erstmal!

UGrohne hat folgendes geschrieben:
1. Der Button steckt in der zu erstellenden Form
2. Die Anzeigeprozedur steckt auch da drin, dann hab ich net den Umweg über FindComponent[/url]


Das kann nicht funzen - wie willst du was benutzen, was noch gar nicht existiert???

Gruß Renegade


UGrohne - Sa 07.12.02 12:43

Es läuft so, das Formular wird erzeugt, OnShow wird aufgerufen und genau da soll jetzt mein Button erstellt werden.

Das formular gibts also schon, soweit hab ich natürlich gedacht und ich kann den Button ja auch im Anpassen-Dialog auswählen. Nur wie kann ich ihn zur Laufzeit automatisch einer Toolbar zuweisen? Parent geht net, bringt alle möglichen Fehler von Formularfehlern bis hin zu Stack-Überläufen.