Вопрос

QSpinBox makes its contents selected (highlighted) upon using up/down buttons. Is there any way to disable this? Is there any way to clear selection, other than use my own subclass of QSpinBox to access the underlying QLineEdit?

Это было полезно?

Решение

There's no way to directly disable it, but you can do a bit of a hack:

void Window::onSpinBoxValueChanged() // slot
{
    spinBox->findChild<QLineEdit*>()->deselect();
}

I recommend connecting to this using a queued connection, like this:

connect(spinBox, SIGNAL(valueChanged(int)), this, SLOT(onSpinBoxValueChanged()), Qt::QueuedConnection);

This will ensure that the slot is called after the line edit is highlighted.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top