寫了乙個槽函式,實現這樣的功能,如圖:
上面是乙個 lineedit,下面是乙個listwidget。當我在lineedit輸入文字時,在listwidget中能根據輸入檢索到相關項,並顯示。
剛開始的時候,我是這樣做的
這樣做的結果就是程式執行到 ui->listwidget->additem(item);
程式會出現錯誤,然後掛掉!
後來發現了原因:
因為 qlistlist;
這個list只是乙個指標,指向listwidget裡的項
如果ui->listwidget->clear();
那麼list裡的那些item就毀掉了。
這時候呼叫ui
->
listwidget
->additem(item); 當然會掛掉。
然後我做了改進
void dialog::searchlistwidgetitem(qstring str)
ui->listwidget->clear();
for(int i =0;ilistwidget->additem(strlist.at(i));}}
else
}
總算是順利完成。 Qt中listwidget中刪除item的方法
一 要想長按刪除qlistwidget的item,必須重寫滑鼠事件,所以需要繼承qlistwidget重寫自己的mylistwidget。分享一下我寫的類 h檔案 ifndef cjwlistwidget h define cjwlistwidget h include include includ...
在ListWidget中新增自定義的Item
之前看過很多在listwidget中新增item的方法,但是大部分都沒能解決我的問題。昨天把這個問題解決了,想著把它記下來。留個紀念吧。先上乙個圖例。就像這一樣。這個是純 實現。以下是純 include dialog.h include ui dialog.h include include dia...
Qt 中 實現窗體拖動
實現窗體拖動 如果我們不使用作業系統自帶的標題欄,首先就應該將windows標題欄去掉,這個功能只要一條語句就能夠實現,那就是在建構函式中加入 setwindowsflags qt framelesshint 但是窗體就固定不動了,既不能拖動也不能拉伸,下面我就介紹一種方法來實現窗體的拖動。1.在類...