QSpinBox
rende i suoi contenuti selezionati (evidenziati) usando i pulsanti su/giù. C'è un modo per disabilitarlo? C'è un modo per cancellare la selezione, oltre ad usare la mia sottoclasse di QSpinBox
per accedere allo QLineEdit
sottostante?Come impedire a QSpinBox di evidenziare automaticamente il contenuto
6
A
risposta
7
Non c'è modo per disattivare direttamente, ma si può fare un po 'di hack:
void Window::onSpinBoxValueChanged() // slot
{
spinBox->findChild<QLineEdit*>()->deselect();
}
mi consiglia di collegare a questo utilizzando una connessione in coda, in questo modo:
connect(spinBox, SIGNAL(valueChanged(int)), this, SLOT(onSpinBoxValueChanged()), Qt::QueuedConnection);
Questo assicurerà che lo slot venga chiamato dopo che la modifica della riga è stata evidenziata.
Grazie! Funziona come un fascino. –