Domanda

Sto mantenendo un'applicazione che cerca di aiutare l'utente a far lavorare insieme i suoi parametri, poiché ci sono molte interdipendenze.

Ora esiste un valore predefinito di x per una variabile Y. Quando l'utente modifica un'altra variabile Z, potrebbe esserci un nuovo valore minimo per Y che è maggiore di x. Questo è impostato come minimo per lo spinbox. Ora la spinbox non può più visualizzare il valore corrente, ma piuttosto mostra il minimo. Vorrei che l'utente potesse vedere il suo vecchio valore. C'è qualche impostazione che non vedo in Qt per ottenere qualcosa del genere?

La stessa domanda vale per QComboBox.

È stato utile?

Soluzione

Come approccio puoi creare una nuova classe, ereditata da Qt standart QSpinBox (o nel secondo caso da QComboBox) e aggiungere la tua logica ad essi: possibilità di mostrare un valore inferiore al minimo, ma quando qualcuno vuole cambiare esplicitamente valore nel tuo input widget, controllerai i limiti.

Altri suggerimenti

Un altro approccio è quello di collegare ciascun widget alla funzione che controllerà se gli altri valori sono corretti (e in caso contrario li correggeranno) :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top