我的一半答案是在这里找到的:How to prevent QSpinBox from automatically highlighting contents
但是,该程序仍然允许使用鼠标或触摸拖动来突出显示旋转框的值。我完全不需要突出显示,因为我的应用程序用于嵌入式设备接口(interface)。
如何完全禁用任何类型的突出显示,同时仍然保持旋转框向上/向下按钮功能。
最佳答案
我们最终所做的是将几个信号连接到 textEditDeselect 插槽。
foreach(QSpinBox* sb, ui.main->findChildren<QSpinBox*>())
{
sb->findChildren<QLineEdit*> ().at(0)->setReadOnly(true);
connect(sb,SIGNAL(valueChanged(int)),this,SLOT(textEditDeselect()), Qt::QueuedConnection);
connect(sb->findChild<QLineEdit*> (), SIGNAL(cursorPositionChanged(int,int)),this, SLOT(textEditDeselect()),Qt::QueuedConnection);
}
关于qt - 如何完全禁用 qspinboxes 的值突出显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22356673/