Qt 實現listWidget中項的檢索

2021-06-13 14:22:28 字數 783 閱讀 9219

寫了乙個槽函式,實現這樣的功能,如圖:

上面是乙個 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.在類...