QLineEdit是Qt框架中的一个控件,用于接收用户的文本输入。QListWidget是Qt框架中的另一个控件,用于显示列表项。
要使用QLineEdit过滤QListWidget,可以通过以下步骤实现:
QLineEdit *lineEdit = new QLineEdit(this);
QListWidget *listWidget = new QListWidget(this);
connect(lineEdit, &QLineEdit::textChanged, this, &MainWindow::filterList);
void MainWindow::filterList(const QString &text)
{
for (int i = 0; i < listWidget->count(); ++i) {
QListWidgetItem *item = listWidget->item(i);
if (item->text().contains(text, Qt::CaseInsensitive)) {
item->setHidden(false);
} else {
item->setHidden(true);
}
}
}
在上述代码中,我们遍历QListWidget中的每个项,将包含QLineEdit文本输入的项显示出来,其他项隐藏起来。
listWidget->addItem("Item 1");
listWidget->addItem("Item 2");
listWidget->addItem("Item 3");
// ...
这样,当用户在QLineEdit中输入文本时,QListWidget中只会显示包含该文本的项。
推荐的腾讯云相关产品:腾讯云服务器(CVM)和腾讯云数据库(TencentDB)。
云+社区沙龙online [技术应变力]
企业创新在线学堂
企业创新在线学堂
北极星训练营
北极星训练营
北极星训练营
腾讯云GAME-TECH沙龙
高校公开课
云+社区沙龙online第5期[架构演进]
领取专属 10元无门槛券
手把手带您无忧上云