Hi all,
i'm new to QT, I get application crashed when i delete the last item in QListWidget....
following is my code...

Qt Code:
  1. #include <QtGui>
  2.  
  3. class MainWindow : public QWidget
  4. {
  5. Q_OBJECT
  6. public:
  7. explicit MainWindow(QWidget *parent = 0)
  8. : QWidget(parent)
  9. {
  10. _listWidget = new QListWidget(this);
  11. _listWidget->resize(300,200);
  12. _textEdit = new QTextEdit(this);
  13. _textEdit->move(0,240);
  14.  
  15. for(int i= 0 ; i < 3 ; i++){
  16. QListWidgetItem *item = new QListWidgetItem(_listWidget);
  17. item->setData(Qt::DisplayRole, tr("item %1").arg(i));
  18. item->setData(Qt::DecorationRole, qApp->style()->standardIcon(QStyle::SP_DirIcon));
  19. }
  20.  
  21. connect(_listWidget, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)),
  22. this, SLOT(listItemChged(QListWidgetItem*,QListWidgetItem*)));
  23.  
  24. QPushButton *delBtn = new QPushButton(tr("Delete current item"), this);
  25. delBtn->move(0, 210);
  26. connect(delBtn, SIGNAL(clicked()), this, SLOT(delCurrItem()));
  27.  
  28. resize(600,700);
  29. }
  30.  
  31.  
  32. private slots:
  33. void listItemChged(QListWidgetItem* currItem, QListWidgetItem*)
  34. {
  35. _textEdit->append(currItem->data(Qt::DisplayRole).toString());
  36. }
  37.  
  38. void delCurrItem()
  39. {
  40. if(_listWidget->count() < 1) return;
  41. delete _listWidget->currentItem();
  42. }
  43.  
  44. private:
  45. QListWidget *_listWidget;
  46. QTextEdit *_textEdit;
  47.  
  48. };
  49.  
  50. #include "main.moc"
  51.  
  52. int main(int argc, char *argv[])
  53. {
  54. QApplication app(argc, argv);
  55. MainWindow mainWin;
  56. mainWin.show();
  57. return app.exec();
  58. }
To copy to clipboard, switch view to plain text mode 

Could somebody help me? thanks in advance....
Sorry for my poor English....