qstring frage

Verschiedenes zu Qt
Antworten
AndiLatte
Beiträge: 104
Registriert: 13. November 2007 13:39

qstring frage

Beitrag von AndiLatte »

Hallo Zusammen,

ich hab die Frage, ob man einen qString direkt zu Programmcode wandeln kann.
Habe mir vorstellt über eine ComboBox verschiedene Auswahlmöglichkeiten zu haben. Die jeweilige Auswahl übernehme ich als qstring, der genauso wie eine memberfunktion heisst und dann übergeben/ausgeführt wird.

wie kann ich also den qstring direkt als code nutzen? geht das überhaupt in c++.
habe die idee somit eine case oder if/else Auswahl zu umgehen.

danke für ne antwort.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Da Qt keine interpretierende Sprache ist geht das nicht.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

Die aufzurufenden Methoden könnten in einem QObject als "Slots" deklariert werden und mit http://doc.qt.nokia.com/qmetaobject.html#invokeMethod "als String" aufgerufen werden..

Bei einer Combobox fände ich das jedoch nicht so schön, weil dadurch eine Internationalisierung verunmöglicht wird. Allenfalls würde ich da noch zwischen "angezeigtem String" (DisplayRole) und "Functioncall" (UserRole) unterscheiden.


hth..
RavenIV
Beiträge: 267
Registriert: 21. Januar 2009 14:24
Wohnort: Waldshut

Beitrag von RavenIV »

Du könntest mit Funktionspointern arbeiten, falls Du diese zur Laufzeit bekommst.
Diese kannst Du in eine map stecken mitsamt der Beschreibung der Funktion.
In der Combobox zeigst Du die Beschreibung an und aus der map holst Du den Funktionspointer über den Du die Funktion aufrufst.

Musst Du halt mal versuchen, ob das funktioniert...
Linux, das längste Text-Adventure aller Zeiten
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Und außerdem gäbe es noch QtScript.
Antworten