Seite 1 von 1

QListWidget und clear führt zum Absturz

Verfasst: 3. November 2010 13:05
von malabarista
Der Aufruf von clear für ein QListWidget führt regelmässig zum Programmabsturz, - unabhängig, ob im QListView etwas darinsteht oder nicht.

Nachstehnd folgt das Programmgerüst.

Sieht jemand einen Fehler ?

Tprojpan::Tprojpan()
{

QListWidget *lproj = new QListWidget;
connect(lproj, SIGNAL(itemClicked()), this, SLOT(xok()));
lproj->addItem("test1");
lproj->addItem("test2");
}

void Tprojpan::neues_projekt()
{
lproj->clear(); //<<<=== hier stürzt das Programm ab. Wieso ???
}

void Tprojpan::xok()
{

}


--------------------------------------
class Tprojpan : public QWidget
{
Q_OBJECT

public:
Tprojpan();
void neues_projekt();

private:
QListWidget *lproj;

private slots:
void xok();

}
-----------------------------------------------

Verfasst: 3. November 2010 13:35
von archer
Du musst in deinem Konstruktor auch den Member lproj benutzen, und nicht eine lokale Variable. Dein Memberzeiger ist dadurch nicht initialisiert und es gibt eine Zugriffsverletzung.

Code: Alles auswählen

Tprojpan::Tprojpan()
{
    lproj = new QListWidget;
    connect(lproj, SIGNAL(itemClicked()), this, SLOT(xok()));
    lproj->addItem("test1");
    lproj->addItem("test2");
} 

Verfasst: 3. November 2010 14:01
von malabarista
ja, das war's.
Dankeschön !