Alles rund um die Programmierung mit Qt
anno1988
Beiträge: 280 Registriert: 23. Januar 2009 20:49
Beitrag
von anno1988 » 30. September 2010 23:04
Hallo,
ich ahbe ein Problem mit der QComboBox.
Normal ist es ja so, dass wenn man einen Text verändert hat, immer das Signal editTextChanged ( const QString & text ) gesendet wird.
wie bekomme ich es aber hin, dass dieses Signal erst geschickt wird, sobald Return gedrückt wurde, um die Eingabe zu bestätigen?
Muss ich dazu die Klasse vererben?
ScyllaIllciz
Beiträge: 200 Registriert: 9. Juli 2010 19:31
Beitrag
von ScyllaIllciz » 1. Oktober 2010 06:51
Nimm doch das Signal "returnPressed()" vom QComboBox::lineEdit().
Bsp.:
Code: Alles auswählen
QComboBox *cb=new QComboBox;
connect(cb->lineEdit(), SIGNAL(returnPressed()), ....)
anno1988
Beiträge: 280 Registriert: 23. Januar 2009 20:49
Beitrag
von anno1988 » 1. Oktober 2010 15:25
alles klar, danke für den tipp. werde ich machen.
padreigh
Beiträge: 340 Registriert: 13. Mai 2010 10:06
Beitrag
von padreigh » 1. Oktober 2010 15:42
anno1988 hat geschrieben: alles klar, danke für den tipp. werde ich machen.
Was ist denn wenn jemand den Text editiert aber dann TAB drückt ... oder mit der Maus in ein anderes Widget klicked ... das solltest du berücksichtigen.
anno1988
Beiträge: 280 Registriert: 23. Januar 2009 20:49
Beitrag
von anno1988 » 1. Oktober 2010 19:29
dafür kann ich dann ja einfach das Signal editingFinished() benutzen.
padreigh
Beiträge: 340 Registriert: 13. Mai 2010 10:06
Beitrag
von padreigh » 2. Oktober 2010 09:50
jupp ... sollte man dann aber auch
sonst ändert dein user was, klickt mit der Maus woanders hin und wundert sich das nix passiert ...