Hallo
in meinem Programm lade mittels QUiLoader zur Laufzeit einen Dialog aus einem zur Laufzeit generierten ui-File.
Nun möchte ich gerne eine eigene Funktion in diesem Dialog (einen eigenen Slot) definieren, die, damit auch diese dynamisch generiert werden kann, eben im ui-File stehen müsste und dann erst zur Laufzeit interpretiert würde.
Welche Möglichkeiten gibt es da?
Ciao
otternase
eigene Slots im ui-File definieren
So wie es klingt baust Du die XML-Struktur der *.ui selber zusammen und wenn Du das tust wirst Du doch jetzt keine Probleme damit haben auch noch die Slots mit in die XML-Struktur rein zupacken, oder?
Schau Dir doch einfach ein vom Designer erzeugtes File an und übernehme das Schema auch so, so oder so ähnlich wirst Du es doch auch mit den Widgets gemacht haben.
Gut Schuß
VuuRWerK
Schau Dir doch einfach ein vom Designer erzeugtes File an und übernehme das Schema auch so, so oder so ähnlich wirst Du es doch auch mit den Widgets gemacht haben.
Gut Schuß
VuuRWerK
Es gibt nur 3 natürliche Feinde des Programmierers: Tageslicht, frische Luft und das unerträgliche Gebrüll der Vögel.
Oft ist die Ursache des schwarzsehens lediglich ein verrutschen des Bretts vorm Kopf =)
Oft ist die Ursache des schwarzsehens lediglich ein verrutschen des Bretts vorm Kopf =)
Hallo VuuRWerk
genau richtig, ich baue die selber und soweit ich vordefinierte Signals/Slots nutze, habe ich auch keine Probleme, die kann ich einfach so verbinden
<connection> <sender>...</sender> <signal>...</signal> <receiver>...</receiver> <slot>...</slot> </connection>
Mein Problem ist, das ich eine eigene neue Funktion als Slot haben will, die erst zur Laufzeit generiert wird und daher auch erst zur Laufzeit interpretiert werden kann, ich suche also etwas etwa so
<function void abc(int)>...hier die Funktion in welcher Sprache auch immer...</function>
die ich dann so aufrufen kann: <slot>abc(int)</slot>
genau richtig, ich baue die selber und soweit ich vordefinierte Signals/Slots nutze, habe ich auch keine Probleme, die kann ich einfach so verbinden
<connection> <sender>...</sender> <signal>...</signal> <receiver>...</receiver> <slot>...</slot> </connection>
Mein Problem ist, das ich eine eigene neue Funktion als Slot haben will, die erst zur Laufzeit generiert wird und daher auch erst zur Laufzeit interpretiert werden kann, ich suche also etwas etwa so
<function void abc(int)>...hier die Funktion in welcher Sprache auch immer...</function>
die ich dann so aufrufen kann: <slot>abc(int)</slot>
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Codegenerierung und Reflection sind in einem nativen Umfeld wie bei C++ nicht möglich, zumindestens ist mir nix bekannt.
Sowas geht nur wenn der Quellcode von einem Interpreter interpretiert wird, so wie es in Java oder .NET der Fall ist.
Die Slot-Funktion muss also im kompilierten Maschienencode vorhanden sein um damit ein ein Signal zu verbinden.
Gut Schuß
VuuRWerK
Sowas geht nur wenn der Quellcode von einem Interpreter interpretiert wird, so wie es in Java oder .NET der Fall ist.
Die Slot-Funktion muss also im kompilierten Maschienencode vorhanden sein um damit ein ein Signal zu verbinden.
Gut Schuß
VuuRWerK
Es gibt nur 3 natürliche Feinde des Programmierers: Tageslicht, frische Luft und das unerträgliche Gebrüll der Vögel.
Oft ist die Ursache des schwarzsehens lediglich ein verrutschen des Bretts vorm Kopf =)
Oft ist die Ursache des schwarzsehens lediglich ein verrutschen des Bretts vorm Kopf =)