editingFinished wird nicht ausgelöst

Alles rund um die Programmierung mit Qt
Antworten
pospiech
Beiträge: 232
Registriert: 1. September 2006 17:20
Wohnort: Hannover

editingFinished wird nicht ausgelöst

Beitrag von pospiech »

Ich habe eine Klasse doublelineedit die von qlineedit abgeleitet ist. In dieser fange ich editingFinished über folgendes Connect ab:

Code: Alles auswählen

connect(this, SIGNAL(editingFinished()), this, SLOT(checkValue())); 
Wenn ich in den doublelineedit widgets den Text aber ändere und den Fokus des widgets verlasse dann wird die Funktion checkValue() nicht aufgerufen.

Wenn ich hingegen

Code: Alles auswählen

connect(this, SIGNAL(textEdited(const QString &)), this, SLOT(setValueFromText (const QString &)));
abfange dann wird die Funktion 'setValueFromText ' auch aufgerufen.

Warum ?

Matthias
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Vielleicht deshalb:
Note that if there is a validator() or inputMask() set on the line edit and enter/return is pressed, the editingFinished() signal will only be emitted if the input follows the inputMask() and the validator() returns QValidator::Acceptable.
Ggf. auch mal in qlineedit.cpp an den beiden Stellen, an denen das Signal erzeugt wird, einen Breakpoint setzen und schauen ob Du überhaupt dort ankommst.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten