#include "stdafx.h"
#include "QtGuiApplication2.h"
QtGuiApplication2::QtGuiApplication2(QWidget *parent): QMainWindow(parent)
{
ui.setupUi(this);
timer_checkDev = new QTimer(this);
connect(timer_checkDev, SIGNAL(timeout()), this, SLOT(checkDevNum()));
timer_checkDev->start(1);
initTab();
connect(ui.pushButton, SIGNAL(clicked()), this, SLOT(serchOpt()));
}
void QtGuiApplication2::serchOpt()
{
QString text = ui.lineEdit->text();
ScreenInfo(ui.tableWidget, text);
}
void QtGuiApplication2::initTab()
{
ui.tableWidget->setColumnCount(2);
QStringList header;
header << QString::fromLocal8Bit("行政区编码") << QString::fromLocal8Bit("终端地址");
ui.tableWidget->setHorizontalHeaderLabels(header);
ui.tableWidget->setColumnWidth(0, 80); //(*mod)->setColumnWidth(0,60);
ui.tableWidget->setColumnWidth(1, 60);
ui.tableWidget->setRowCount(10);
for (int i=0;i<10;i++)
{
ui.tableWidget->setItem(i, 0, new QTableWidgetItem(QString::fromLocal8Bit("%1").arg(i)));
}
}
void QtGuiApplication2::ScreenInfo(QTableWidget *source, QString &text)
{
int rC = source->rowCount();//获得行数
if ("" == text) {//判断输入是否为空
for (int i = 0; i < rC; i++) {
source->setRowHidden(i, false);//显示所有行
}
}
else {
//获取符合条件的cell索引
QList <QTableWidgetItem *> item = source->findItems(text, Qt::MatchContains);
for (int i = 0; i < rC; i++) {
source->setRowHidden(i, true);//隐藏所有行
}
if (!item.isEmpty()) { //不为空
for (int i = 0; i < item.count(); i++) {
source->setRowHidden(item.at(i)->row(), false);//item.at(i).row()输出行号
}
}
}
}