2
我有一個QSpinBox
,我希望它只接受正自然數。這工作正常,直到我輸入一個點.
限制輸入QSpinBox
如果我輸入234235.23456
並將焦點更改爲其他某個spinbox,則該值更改爲23423523456
。
所以我要尋找一個辦法忽略背後的.
一切這是可能沒有子QSpinBox
?
我有一個QSpinBox
,我希望它只接受正自然數。這工作正常,直到我輸入一個點.
限制輸入QSpinBox
如果我輸入234235.23456
並將焦點更改爲其他某個spinbox,則該值更改爲23423523456
。
所以我要尋找一個辦法忽略背後的.
一切這是可能沒有子QSpinBox
?
我發現我的porblem修復:
QDoubleSpinBox * box = new QDoubleSpinBox();
box->setDecimals(0);
box->setSingleStep(1.0);
box->findChild<QLineEdit*>()->setValidator(new QRegExpValidator(QRegExp(QString("^[1-9][0-9]*$"))));
謝謝你,你剛纔打開了我的想法:) – 2016-11-14 17:55:34
使用逗號? Qt尊重本地化設置(IIRC),以便可以幫助 – 2014-12-03 10:43:44
可能不是,但QDoubleSpinBox和setDecimals(0)可能是您的解決方法。 :否則,只需重新實現[this](http://doc-snapshot.qt-project.org/qt5-5.4/qspinbox.html#textFromValue)。 – lpapp 2014-12-03 10:47:33
我第一次嘗試使用setDecimals(0)的QDoubleSpinBox,但它的行爲方式相同 – user2699453 2014-12-03 10:59:07