首页 文章

QLineEdit:setValidator for 4bytes unsigned Integer无法正常工作

提问于
浏览
0

我使用 QTableWidget 输入用户定义工具参数的值 . 每个参数都有一个字节的最大大小限制 .

我使用了 QIntValidatorQLineEdit 以及 setCellWidget . 它可以正常工作,最多4个字节的有符号整数,而在设置为4个字节的无符号整数时不进行输入 .

QLineEdit *edit = new QLineEdit(ui->tableWidget);
  edit->setValidator(new QIntValidator(tpMinValue.at(i).toUInt(), tpMaxValue.at(i).toUInt(), edit));
  edit->setStyleSheet("QLineEdit { border: none }");
  ui->tableWidget->setCellWidget((i-1), 2, edit);

例子

  • 工具A:最大大小为2个字节(65,535)无符号整数;我能够在单元格中输入高达65,535的值 .

  • 工具B:最大大小为4字节(2,147,483,647)有符号整数;我能够在单元格中输入最多2,147,483,647的值 .

  • 工具C:最大大小为4字节(4,294,967,295)无符号整数;我在牢房里是 unable to enter any value .

它不允许我在单元格中输入任何数字,因为QIntValidator的最大允许值是(2,147,483,647)有符号整数 .

有没有其他方法可以解决这个问题?

1 回答

相关问题