简单查找匹配功能

如下所示

void CSelectSeimsicDialog::showFindfilename()

{
QString t_filter=ui.findData_lineEdit->text();
QList<QListWidgetItem *> t_list;  
t_list= ui.SeimsicData_listWidget->findItems(t_filter,Qt::MatchStartsWith);  
//若str == ""findItems函数能返回全部项  
QStringList t_filterstrList;  
if(!t_list.isEmpty())  
{  
for(int i=0;i<t_list.size();i++)  
{  
t_filterstrList<<t_list.at(i)->text();  
}  
ui.SeimsicData_listWidget->clear();  
for(int i =0;i<t_filterstrList.size();i++)  
{  
ui.SeimsicData_listWidget->addItem(t_filterstrList.at(i));  
}  
}  
else  
{  
QMessageBox::warning(this, tr("error"),
tr("Not Exist,Please Find Again!"));
ui.findData_lineEdit->clear();
return;

}  

可以初始化列表

QList<QListWidgetItem *> t_listfilename;  
for (int i=0;i<ui.SeimsicData_listWidget->count();i++)
{
t_listfilename.append(ui.SeimsicData_listWidget->item(i));
}
for(int i=0;i<t_listfilename.size();i++)  
{  
m_vecallfilename.push_back(t_listfilename[i]->text());
}
const vector<QString>m_constfielname=m_vecallfilename;
initdlg(m_vecallfilename);


另外的查找匹配方法:



//vector<QString>::iterator itemfilename;
//QStringList t_filterstrList; 

//QString t_filter=ui.findData_lineEdit->text();
//    for ( itemfilename=t_vecallfilename.begin();itemfilename!=t_vecallfilename.end();itemfilename++)
//    {
//    if( (*itemfilename).contains(t_filter)) 
//    {
// t_filterstrList<<((*itemfilename));
//    }



只比较QString的方法

QString t_filter=ui.findData_lineEdit->text();
    ui.SeimsicData_listWidget->clear();  
for (int i = 0; i < m_allName.size(); i++)
{
if(m_allName[i].contains(t_filter)) 
{
ui.SeimsicData_listWidget->addItem(m_allName[i]);
}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值