Entwickler-Ecke

Sonstiges (Delphi) - Menüstruktur kopieren


JayK - Sa 21.05.05 14:30
Titel: Menüstruktur kopieren
Hallo,

wie kann ich zur Designzeit eine Menüstrktur[meta]Menu[/meta] kopieren[meta]kopieren[/meta]???
Wenn ich zum Beispiel ein JvMainMenu in ein MainMenu umwandeln möchte, dann müsste ich das ganze Menü neu aufbauen und die Properties sowie Events setzen... gibts da nicht irgentwas anderes?

Schonmal Danke im vorraus,
JayK


feivel3333 - Mo 23.05.05 13:09

Hi,
von wo nach wo willst du das Menü kopieren? Sprichst du von zwei verschiedenen Fenstern oder von ein- und dem selben?

Innerhalb eines Fensters brauchst du nur STRG-C und danach STRG-V zu drücken. Das zweite Menüelement liegt dabei exakt auf dem ersten.

Wenn du das Menü auf ein zweites Fenster kopieren willst, dann wirst du die Menüpunkt-Events natürlich neu anlegen müssen, da in dem zweiten Fenster sicher nicht die namentlich identischen Events vorliegen. Aber die Struktur wird auf die gleiche Weise kopiert und mit rübergenommen. Du brauchst sie nicht manuell neu aufzubauen. Nur kopieren und einfügen, fertig.

Vielleicht denke ich aber schon wieder viel zu simpel, und du hast was ganz anderes vor.

Gruß, Feivel


JayK - Mo 23.05.05 19:37

Na ja, so richtig hasste es noch nicht getroffen... :wink:
Ich habe ein TJvMainmenu. (Soweit alles klar?)
Davon möchte ich die Menüstruktur haben, um sie dann auf dem selben Formular in ein TMainMenu einfügen. nach Gründen soll jetzt aber keiner Fragen: damit es mehr Leute benutzen können (nicht jeder hat JVCL, hmm, warum baut Borland das nich auch mal in Delphi ein :gruebel:?).

Mit Strg+C hab ich es schon pobiert und hat gklappt (nach dem ich hier aufgemacht habe...), aber danach gab es immer irgentwelche seltsamen Zugriffsverletzungen aus einem Laufzeit-BPL, wenn ich das TJvMainMenu löschen oder bearbeiten wollte. :autsch:


crakos - Mo 23.05.05 19:44

user profile iconJayK hat folgendes geschrieben:
...aber danach gab es immer irgentwelche seltsamen Zugriffsverletzungen aus einem Laufzeit-BPL, wenn ich das TJvMainMenu löschen oder bearbeiten wollte. :autsch:

Die hab ich Zurzeit auch ^^ Mal gehts 10 mal hintereinander, und dann auf einmal nicht mehr :>


jaenicke - Di 24.05.05 15:23

Hmm, bevor du meinen Vorschlag ausprobierst, sichere die aktuellen Dateien :!: :!: :!: , das könnte auch schief gehen!

Also: Rechte Maustaste auf das Formular, "Ansicht als Text", dort TJvMainMenu suchen und in TMainMenu ändern, dann wieder rechte Maustaste in den Quelltext und "Ansicht als Formular".
Jetzt speichern und bestätigen, dass die falsche Deklaration richtiggestellt werden soll!
Dann sollte alles richtig sein, das TJvMainMenu sollte jetzt ein TMainMenu sein.

Es könnten auch Meldungen kommen, dass Eigenschaften nicht existieren, diese einfach ignorieren.

Wenn danach die Komponente auf dem Formular weg ist, stell die Sicherung wieder her, dann klappt das nicht...


JayK - Do 26.05.05 20:27

@jaenicke: Ja das klappt :D (zumindest mit Delphi 6, was ich bemerkt habe ist viel schneller als Delphi 2005 :motz:).
Danke für den Tipp! Damit ist das Problem erstmal gelöst.