QTableWidgetItem默认编辑时,不是数字的字符也能输入。如何设置不是数字的就不能输入?QTableWidgetItem默认
QTableWidgetItem默认编辑时,不是数字的字符也能输入。如何设置不是数字的就不能输入?
QTableWidgetItem默认编辑时,不是数字的字符也能输入。如何设置不是数字的就不能输入?
[解决办法]
QRegExp ipRegExp = QRegExp("((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){4}");
QRegExpValidator *ipRegExpValidator = new QRegExpValidator(ipRegExp, this);
ipLineEdit->setValidator(ipRegExpValidator);
ipLineEdit->setInputMask("000.000.000.000; ");
这是IP的验证方法 你照着改下吧你呢个我没试过
[解决办法]
lz 根据你的要求,我变相的实现啦下,思路就是:先让单元格输入任何字符,然后在判断!如果判断不是数字则把该单元格设置为:0!
在单元格 cellChanged()时处理判断;
代码如下:
- C/C++ code
void MainWindow::on_tableWidget_cellChanged(int row, int column){ if(column == 1) return; QTableWidgetItem* item = ui->tableWidget->item (row,column); if(!item) return; QString str = item->text (); QRegExp rxs("^([1-9][0-9]*)$"); if(!rxs.exactMatch (str)) { QMessageBox::about (this,tr("waring"),tr("please input diagtal")); item->setText (QString("0")); }}
时间: 2024-11-08 23:11:53