Seite 1 von 1

[gelöst]Datei über Menü öffnen

Verfasst: 10. März 2006 14:49
von shader76
Hallo Forum,

ich habe eine MenuBar worüber ich eine Datei öffnen will bzw das Eventhandling für die jeweiligen Optionen programmieren möchte (Öffnen, Beenden...usw)


Habe überlegt eine Funktion zu schreiben nur funktioniert dies nicht :


Code: Alles auswählen

void meinMenu::on_openAct_clicked()
{
    QString sVerzeichnis = "C:\\";
	QString types;
    types = tr("txt files") + " (*.txt)" ;
	
	 
	 QString fileName = QFileDialog::getOpenFileName(
						this,
						"",
						sVerzeichnis,
						types);
}
Wie kann ich das ermöglichen :roll:

-shader76-
-Visual Studio.Net 2003 & QT4.1

Verfasst: 10. März 2006 14:58
von macman
Wo hast Du die denn in deinem Header eingetragen? Unter private: oder unter private slots:? Ein beliebter Fehler meinerseits :)

Verfasst: 10. März 2006 15:00
von shader76
unter private slots

Verfasst: 10. März 2006 15:04
von macman
Dann geht es wohl nicht automatisch und du musst es von Hand machen. Halte ich auch für besser. Schön das es den Automatismus gibt, aber nutzen tue ich ihn nicht :-) Dafür sind meine Programme zu dynamisch.

Verfasst: 10. März 2006 15:05
von shader76
Hast du vielleicht einen Ansatz diesbzgl,...hab im mom no idea wie ich die Sache angehen soll :?: :?:

Verfasst: 10. März 2006 15:11
von macman
Wie so oft gibt es mehrere Lösungen. Eine wäre z.B. diese, die ich fürs SystemTray nutze:

Code: Alles auswählen

	QMenu menu;
	QAction* actionShow = new QAction(QIcon(), app.translate("@default", "Zeige &Dialog"), &app);
	actionShow->setShortcut(app.translate("@default", "Ctrl+D"));
	QObject::connect(actionShow, SIGNAL(triggered()), &dialog, SLOT(showNormal()));
	menu.addAction(actionShow);

Verfasst: 10. März 2006 16:20
von shader76
das schaut ja ganz gut aus :wink:
probiere mal ob ich es hinkriege

nur ist mir nicht so ganz klar wo ich sage dass ein ÖffnenDialog erscheinen soll :?:

[gelöst] Datei über Menü offnen

Verfasst: 10. März 2006 16:34
von shader76
HEY habs hingekriegt :lol: :lol:

DANKE dir