shortkeys in Applikation verwenden
Verfasst: 2. Dezember 2012 12:32
Hallo Programmierer,
mit Creator habe ich eine Applikation programmiert, die mit Tastenkombinationen gesteuert werden soll.
Es wurden zwei Aktionen definiert.
[code]
// OPEN-Action ++++++++++++++++++++++++++++++
openAct = new QAction( this );
openAct->setShortcuts(QKeySequence::Open);
connect(openAct, SIGNAL(triggered()), this, SLOT(read()));
this->addAction(openAct);[/u]
// Password-Action ++++++++++++++++++++++++++
pwdAct = new QAction( this );
pwdAct->setShortcuts(QKeySequence::Print);
connect(pwdAct, SIGNAL(triggered()), this, SLOT(showPWD()));
this->addAction(pwdAct);[/u]
[/code]
Nach dem Starten der Applikation funktioniert auch der erste Befehl.
Eine Datei wird eingelesen.
Nun soll eine Passwortabfrage erfolgen, aber nur nach einem "CNTR+P".
Und hier gehts nicht weiter. Die Tastenkombination wird von der Anwendung nicht akzeptiert.
Der Rechner beantwortet die Eingabe mit einem Fehlerton über den Lautsprecher.
Erst wenn ich mit der Maus in das Applikationsfenster klicke reagiert die Anwendung auf den zweiten Befehl.
Was mache ich falsch?
Versucht habe ich es mit "setFocus(this)" und mit "this->grabKeyboard()" beides hatte keinen Erfolg.
Der zweite Befehl wird nicht ohne vorherigen KLICK in das Fenster akzeptiert.
Gruss GBunge
mit Creator habe ich eine Applikation programmiert, die mit Tastenkombinationen gesteuert werden soll.
Es wurden zwei Aktionen definiert.
[code]
// OPEN-Action ++++++++++++++++++++++++++++++
openAct = new QAction( this );
openAct->setShortcuts(QKeySequence::Open);
connect(openAct, SIGNAL(triggered()), this, SLOT(read()));
this->addAction(openAct);[/u]
// Password-Action ++++++++++++++++++++++++++
pwdAct = new QAction( this );
pwdAct->setShortcuts(QKeySequence::Print);
connect(pwdAct, SIGNAL(triggered()), this, SLOT(showPWD()));
this->addAction(pwdAct);[/u]
[/code]
Nach dem Starten der Applikation funktioniert auch der erste Befehl.
Eine Datei wird eingelesen.
Nun soll eine Passwortabfrage erfolgen, aber nur nach einem "CNTR+P".
Und hier gehts nicht weiter. Die Tastenkombination wird von der Anwendung nicht akzeptiert.
Der Rechner beantwortet die Eingabe mit einem Fehlerton über den Lautsprecher.
Erst wenn ich mit der Maus in das Applikationsfenster klicke reagiert die Anwendung auf den zweiten Befehl.
Was mache ich falsch?
Versucht habe ich es mit "setFocus(this)" und mit "this->grabKeyboard()" beides hatte keinen Erfolg.
Der zweite Befehl wird nicht ohne vorherigen KLICK in das Fenster akzeptiert.
Gruss GBunge