Hey Leute,
wieder ein kleines Problem meinerseits. Hab hier schon einige Beiträge zu Kontextmenüs gelesen, allerdings
hatte ich nicht das Gefühl, dass diese mein Problem lösen oder erklären, da ich in C++ bzw. QT noch recht neu bin.
Also ich Programmiere zum Einstieg einen kleinen Texteditor der bestimmte Kriterien erfüllen muss, z.B unsere Firmeninterne
Driving Files strukturiert einlesen etc.
Nun möchte ich, dass sich im Textedit Widget, wenn man einen Text markiert und dann einen Rechtsklick ausführt, ein spezielles Menue(PopUp Menue)
öffnet. Ist das möglich?
TextEdit auf Rechtsklick Kontextmenü
Re: TextEdit auf Rechtsklick Kontextmenü
Definitiv: ja! Dein TextEditor hat über den textCursor() Zugriff auf den selectedText(). Entscheide dich für eine der Möglichkeiten, ein ContextMenu zu erstellen (Qt::ContextMenuPolicy), und fertig.Ist das möglich?
Re: TextEdit auf Rechtsklick Kontextmenü
Okay und welches Signal benutze ich dann? Arbeite mit dem QT Creator.
Re: TextEdit auf Rechtsklick Kontextmenü
Lies doch bitte die Doku:
http://doc.qt.nokia.com/latest/qt.html# ... olicy-enum
Da stehen die Möglichkeiten aufgelistet, samt Links zu den genauen Beschreibungen.
http://doc.qt.nokia.com/latest/qt.html# ... olicy-enum
Da stehen die Möglichkeiten aufgelistet, samt Links zu den genauen Beschreibungen.
Re: TextEdit auf Rechtsklick Kontextmenü
Es tut mir leid aber vieleicht steh ich gerade zu sehr auf dem Schlauch..
Was ich getan habe im Qt-Creator ist. Ich habe ein TextEdit Widget im Main Fenster erstellt. Dort habe ich dann per Rechtsklick-> Slot anzeigen -> customContextMenuRequested() angeklickt.. Jetzt habe ich schon sehr viele Sachen probiert.. ich hab wie du gesagt hast in dieser Methode versucht
aber ich habe dieses System noch nicht ganz verstanden
Was ich getan habe im Qt-Creator ist. Ich habe ein TextEdit Widget im Main Fenster erstellt. Dort habe ich dann per Rechtsklick-> Slot anzeigen -> customContextMenuRequested() angeklickt.. Jetzt habe ich schon sehr viele Sachen probiert.. ich hab wie du gesagt hast in dieser Methode versucht
Code: Alles auswählen
void editor::on_textEdit_customContextMenuRequested(const QPoint &pos)
{
ui->textEdit->setContextMenuPolicy(Qt::CustomContextMenu);
QMenu test;
test.addAction("Test");
test.popup(pos);
}Re: TextEdit auf Rechtsklick Kontextmenü
Code: Alles auswählen
ui->textEdit->setContextMenuPolicy(Qt::CustomContextMenu);
Oder setze die Eigenschaft direkt im designer (Qt-Creator).
Diese Einstellung sagt ooch erst das das Signal customContextMenuRequested(..) gesendet werden soll.
Re: TextEdit auf Rechtsklick Kontextmenü
Vielen Dank es hat funktioniert ^^ Stand echt was auf dem SChlauch!!