Seite 1 von 1

[gelöst] WhatsThis in Popup bei qt3 einbinden?

Verfasst: 29. Juni 2006 21:01
von 24dan
Wie kann ich in meine Popupmenus die Funktionalität von der WhatsThis Funktion einbinden und nutzen?

Ich habe bisher nur ein Beispiel gefunden bei dem eine Toolbox als Grundlage dient.
wie kann ich bei folgendem Popup WhatsThis einbinden?

Code: Alles auswählen

	m = new QMenuBar( this, tr("Dateimenu") );
	
	QPopupMenu * file = new QPopupMenu();
	Q_CHECK_PTR( file );
	m->insertItem( tr("&Datei"), file );
	const char * fileOpenText = tr("<p><img source=\"fileopen\"> "
			"Click this button to open a <em>new file</em>"
			"You can also select the <b>Open</b> command "
			"from the <b>File</b> menu.</p>");
	file->insertItem( tr("Datei &oeffnen..."),  this, SLOT( load()),     ALT+Key_O );

Verfasst: 29. Juni 2006 23:51
von 24dan
okay ich habe jetzt herausgefunden das:

Code: Alles auswählen

file->insertItem( tr("Datei &oeffnen..."),  this, SLOT( load()), ALT+Key_O );
einen int zurück gibt den ich dann so nutzen kann:

Code: Alles auswählen

	int fileId = file->insertItem( tr("Datei &oeffnen..."),  this, SLOT( load()), ALT+Key_O );
	file->setWhatsThis( fileId, tr(	"Click this button to open a <em>new file</em>"
							"You can also select the <b>Open</b> command "
							"from the <b>File</b> menu.</p>"));
Damit habe ich schon mal die Texte den PopUp-Menu-Einträgen zu geordnet (neuen Rechtschreibung!!!)
Jetzt möchte ich nur noch die Funktion:

Code: Alles auswählen

	QPopupMenu * help = new QPopupMenu();
	Q_CHECK_PTR( help );
	m->insertItem( tr("&Hilfe"), help );
	help->insertItem( tr("Was ist...?"), this, SLOT(whatsThis()), SHIFT+Key_F1 );
richtig einbinden.

Klappt aber nur mit:

Code: Alles auswählen

    	(void)QWhatsThis::whatsThisButton(help);
und ist unzureichend.

Kann jemand helfen?

Verfasst: 1. Juli 2006 00:34
von 24dan
Also zur Lösung meines Problem habe ich gegooglet bis ich es hatte....

Ich habe also einen Menueintrag: Help mit Popupmenu: Was ist ...?

Code: Alles auswählen

	QPopupMenu * help = new QPopupMenu();
	Q_CHECK_PTR( help );
	m->insertItem( tr("&Hilfe"), help );
	help->insertItem( "&Was ist... ?", this, SLOT(help()) );
darin wie zu sehen befindet sich die Funktion: help Welche folgendes zum Inhalt hat:

Code: Alles auswählen

void Editor::help()
{
	(void)QWhatsThis::enterWhatsThisMode();
}
really simple man muss es nur wissen oder lesen können.. :roll: