使用 QSpinBox 是否可以在用户输入 10,000 时显示数字的千位分隔符,这是最好的方法吗?
问问题
2717 次
2 回答
4
我知道这已经晚了,但这可能对其他人有所帮助。我用它来更新千位分隔符
ui->doubleSpinBox->setGroupSeparatorShown(true);
或者
以 ui 的形式设置它的属性
在我的 QDialog 表单中,我使用它来更新带有千位分隔符的金额,
void DialogCashPayment::on_doubleSpinBox_valueChanged(double arg1){
ui->doubleSpinBox->setValue(arg1);
}
编辑:
发现数量为10k以上时,光标位置发生变化的错误。我还不知道如何解决这个问题。也许有人可以解决这个问题。
于 2017-05-25T02:42:16.977 回答
2
您可以子类QSpinBox
化并重新实现textFromValue
负责将值显示到 spinbox 小部件的内容。一个可能的实现可能如下:
QString MySpinBox::textFromValue(int value)
{
return this->locale()->toString(value);
}
使用语言环境是最好的方法,因为它将根据用户的设置显示分隔符。
于 2012-02-14T11:01:42.090 回答