QListWidget clear() Problem
Verfasst: 26. Juli 2006 23:00
Hi,
ich habe ein QListWidget und ein in einem anderen Widget ein QLineEdit. Sobald ich einen Text in das QLineEdit eingebe, sollte das QListWidget gekuerzt/ eingeschraenkt werden. Das QListWidget soll also gefiltert werden.
Das ganze funktioniert auch wunderbar wenn ich direkt nach programmstart in die QLineEdit klicke und einen Text eingebe. Klicke ich aber vorher auf das ListWidget und dann in das textfeld und gebe dann einen buchstaben ein, bekomm ich eine exception in meiner filterfunktion beim funktionsaufruf von clear();
Sobald ich list.clear() aufrufe um die liste zu leeren passiert folgendes (debug ):
es springt in die QListWidget.cpp in diese Fkt:
dann in die QObject
von dort aus wirft er mir dann die exception. Wiegesagt, das ist nur wenn im ListWidget ein eintrag aktiv ist.
Bin fuer jede hilfe dankbar,
Michael
ich habe ein QListWidget und ein in einem anderen Widget ein QLineEdit. Sobald ich einen Text in das QLineEdit eingebe, sollte das QListWidget gekuerzt/ eingeschraenkt werden. Das QListWidget soll also gefiltert werden.
Das ganze funktioniert auch wunderbar wenn ich direkt nach programmstart in die QLineEdit klicke und einen Text eingebe. Klicke ich aber vorher auf das ListWidget und dann in das textfeld und gebe dann einen buchstaben ein, bekomm ich eine exception in meiner filterfunktion beim funktionsaufruf von clear();
Sobald ich list.clear() aufrufe um die liste zu leeren passiert folgendes (debug ):
es springt in die QListWidget.cpp in diese Fkt:
Code: Alles auswählen
void QListWidget::clear()
{
Q_D(QListWidget);
selectionModel()->clear();
d->model()->clear();
}Code: Alles auswählen
#if defined(QT_NO_EXCEPTIONS)
c.receiver->qt_metacall(QMetaObject::InvokeMetaMethod, method, argv ? argv : empty_argv);
#else
try {
c.receiver->qt_metacall(QMetaObject::InvokeMetaMethod, method, argv ? argv : empty_argv);
} catch (...) {
list->lock.lockForRead();
if (c.receiver)
c.receiver->d_func()->currentSender = previousSender;
throw;
}
#endifBin fuer jede hilfe dankbar,
Michael