首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QTableWidgetItem默认编辑时,不是数字的字符也能输入。怎么设置不是数字的就不能输入

2012-03-14 
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"));    }} 

热点排行