Seite 1 von 1
Bearbeiten Menü
Verfasst: 29. Januar 2009 16:03
von archer
Hallo,
hat schon mal jemand ein Bearbeiten Menü in Qt4 implemntiert?
Wie iplementiere ich z.B. den Eintrag Kopieren, so das der Eintrag immer den irgendwo in der Applikation merkierten Text kopiert oder deaktiviert ist, wenn kein text markiert ist?
Verfasst: 29. Januar 2009 18:17
von Christian81
Einfach in QClipboard nachschauen ob was im Clipboard ist.
Verfasst: 30. Januar 2009 07:37
von archer
Das wäre eine Lösung fürs Einfügen, aber was ist mit Kopieren und Ausschneiden?
Habe vorher mit Borland gearbeitet, das nußte ich mich um so etwas nicht kümmern, das machte die IDE.
Verfasst: 30. Januar 2009 07:39
von Christian81
Das Standard-Popupmenu welches so ziemlich jedes Eingabe-Widget hat kümmert sich ja auch daraum... nur wenn Du es selbst schreiben willst musst Du sowas eben abfragen.
Verfasst: 30. Januar 2009 08:11
von archer
Ja, das ist ja mein Problem. Wie frage ich das ab?
Brauche nur einen Ansatz, muß ich da über alle Widgets laufen oder gibt es da etwas in QApplication oder ähnlichem?
Mir fehlt da manchmal der richtige Suchbegriff.
Es soll übrigens kein Popupmenü, sondern ein Hauptmenü sein.
Danke trotzdem schon mal für die Mühe.
Verfasst: 30. Januar 2009 08:21
von Christian81
Im Hauptmenu? Mhhh.Das wird schwieriger denke ich (ich war die ganze Zeit beim Popupmenu, sorry). Mir fällt gerade nur eine Liste mit den zu überwachenden Widgets ein. Bzw. Signals/Slots von diesen zu deinem MainWindow die dies signalisieren. Ggf. gibt es aber auch eine Demo oder Example bei Qt mitgeliefert (imho gibts da ein Texteditor-Programm).
Verfasst: 30. Januar 2009 08:33
von archer
Bei den Beispielen (QT4.3) habe ich schon geschaut, aber einen simplen Texteditor habe ich da nicht gesehen.
Habe nach text und edit gesucht.
Verfasst: 30. Januar 2009 08:48
von Christian81
Und was ist mit 'demos/textedit' ?
Verfasst: 30. Januar 2009 09:19
von archer
Das hilft mir auch nicht weiter. Aber Danke.
Verfasst: 30. Januar 2009 09:48
von Christian81
Was willst Du denn noch mehr? Dort ist es genauso wie ich es oben beschrieben habe - jedes Widget welches Du damit steuern willst wird per Signal/Slot an die Menuleiste gebunden.
Verfasst: 30. Januar 2009 10:10
von archer
Ich habe eine Parametriersoftware für verschiedene Hardware.
Diese hat viele Eingabefelder, spinbox, lineedit, textedit....
welche auf unterschiedlichen Seiten verteilt sind, die teilweise dynamisch erzeugt weden.
Ein copyAvailable() haben aber nur lineEdit und textEdit. Vielleicht sollte ich das Menü nur bei einem reinen Texteditor anbieten.
Ich hätte mir soetwas vorgestellt wie
qApp->fucusWidget()->hasText()
oder
qApp->fucusWidget()->isInputWidget()
Die Eingabe-Widgets haben zwar alle ein textEdit oder lineEdit, dieses ist aber private.
Und ein qobject_cast<QTextEdit*>(mypSpinBox) funktioniert da nicht.
Sorry falls ich zuviel will.