Seite 1 von 1

[gelöst]Routine bei Return auslösen

Verfasst: 5. Oktober 2015 13:42
von mampfi
Meine Wenigkeit hat eine Maske

und würde gerne bei Betätigen der Return-Taste eine Prozedur aufrufen

(Bisher muss ich mit der Maus den Suchen-Button betätigen, eigentlich an Position sein müsste)

Re: Routine bei Return auslösen

Verfasst: 5. Oktober 2015 15:43
von veeman
QLineEdit::returnPressed()

Re: Routine bei Return auslösen

Verfasst: 6. Oktober 2015 13:20
von mampfi
Ausführlichere Erklärung:

Ich hab eine Maske mit den Feldern der Adressverwaltung, die gleichzeitig als Suchmaske dient.

z.B.

lineEdit_nachname
lineEdit_vorname

In "MainWindow::MainWindow(QWidget *parent) ... " werden Buttons mit Prozeduren verknüpft nach der Methode:

connect(ui->pushButton_prev, SIGNAL(clicked()), SLOT(sub_prev() ));
connect(ui->pushButton_next, SIGNAL(clicked()), SLOT(sub_next() ));
connect(ui->pushButton_suchen, SIGNAL(clicked()), SLOT(sub_suchen()));

wo wäre die Routine dann einzubauen?


Die bisher ausprobierten 16 Permutationen haben leider nicht funktioniert. 8O

Aktueller Stand: Beim Test des Kompilats auf dem Hauptrechner wird Return ausgelöst, hab mit dem creator im qdesigner-Menü auf return eingestellt, weiß aber leider nicht mehr wo.

Re: Routine bei Return auslösen

Verfasst: 6. Oktober 2015 19:39
von veeman
mampfi hat geschrieben: Aktueller Stand: Beim Test des Kompilats auf dem Hauptrechner wird Return ausgelöst, hab mit dem creator im qdesigner-Menü auf return eingestellt, weiß aber leider nicht mehr wo.
Vermutlich irgendwo im Signal-Slot Editor/Manager.

Ansonsten ist die von mir angegeben Funktion ein Signal das Ausgelöst wird wenn Return gedrückt wird, dementsprechend muss diese mit einem Slot verbunden werden damit die "Routine" aufgerufen wird.
Da die Signatur zum Klick Event des Buttons passt kannst du das auf die selbe Art und Weise machen.

Code: Alles auswählen

connect(ui->lineEdit_nachname, SIGNAL(returnPressed()), SLOT(sub_suchen() ));
// und/oder
connect(ui->lineEdit_vorname, SIGNAL(returnPressed()), SLOT(sub_suchen() ));
// oder halt so wie du es brauchst

Re: Routine bei Return auslösen

Verfasst: 6. Oktober 2015 23:04
von mampfi
Mittlerweile rausgefunden:

Hab im qtdesigner auf den Suchen-Button geklickt und RETURN bei keypressed eingestellt

Das musste ich für den Test Deines Statement wieder zurückstellen.

Hat funktioniert.

Danke.


Ganz vergessen: Parallel gepostet, sollen alle Befragten von der Lösung profitieren: https://debianforum.de/forum/index.php? ... 28f285eb4a


Korrektur: https://debianforum.de/forum/viewtopic. ... 4&t=157612