Come posso verificare se il valore di un JSlider o JSpinner è stato impostato tramite l'interfaccia grafica e non tramite il metodo setValue(int n)
?Come verificare se il valore è stato impostato manualmente e non con setValue (JSlider, JSpinner)?
Come verificare se il valore è stato impostato manualmente e non con setValue (JSlider, JSpinner)?
risposta
Impostare un valore booleano su true ogniqualvolta si chiama setValue a livello di codice (prima di chiamarlo) e reimpostato su false quando si è terminato con la gestione degli eventi.
Internamente, viene visualizzato il valore di'Valore'. Puoi provare a catturare l'evento quando l'utente sposta la manopola dello slider implementando un ChangeListener per catturare quell'evento. Inoltre, ricorda che lo spostamento della manopola attiva molti eventi di modifica, quindi se sei interessato al valore finale del dispositivo di scorrimento, utilizza lo getValueIsAdjusting
quando valuta su false
.
Se il problema è entro un ChangeListener
, provare a estendere la componente JSlider e aggiungere un nuovo metodo che riceve il nuovo valore e che la emette (con un codice int o un enum, per esempio), che deriva l'impostazione del valore dopo aver reso la tua logica personalizzata al vero metodo setValue.
Nel tuo caso, ti consigliamo di impedire il richiamo di setValue
se un determinato componente lo richiama, se non sbaglio.
Ho già preso l'evento, il problema è all'interno dell'evento perché ci sono due oggetti interdipendenti e cambiano i valori di un anothers in modo che entrino in un ciclo infinito, ecco perché Devo rilevare la modalità di cambiamento. –
@ AndrewG.H. Ho aggiornato la mia risposta. – Gamb
- 1. Come verificare se WaitHandle è stato impostato?
- 2. Python: come verificare se il parametro funzione opzionale è impostato
- 3. Come verificare se l'allarme è impostato
- 4. NSUserDefaults. setValue funziona, non setBool
- 5. Come verificare se HealthKit è stato autorizzato
- 6. Verificare se il valore intero è aumentato?
- 7. JSpinner Variazione di valore Eventi
- 8. Come verificare se il valore css è supportato dal browser?
- 9. Come verificare se $ _GET [ 'id'] è impostato e non è vuoto utilizzando php
- 10. Come verificare se l'attributo richiesto è impostato su un campo
- 11. Come posso verificare se è stato impostato più di un flag enum?
- 12. Come verificare se è stato impostato un argomento dalla riga di comando?
- 13. Come posso verificare se un attributo è stato impostato in un nodo XML utilizzando AS3
- 14. Verificare se è selezionato un valore ComboBox
- 15. Come posso verificare se è stato impostato un gestore eventi JavaScript?
- 16. Come verificare se object "isEmpty()" se Object.prototype è stato modificato?
- 17. Come verificare se il valore è nan in unittest?
- 18. Come verificare se è impostato un elemento di archiviazione?
- 19. Come verificare se il file è un'immagine
- 20. Come verificare se il valore enum è valido?
- 21. Django: Verificare se l'attributo chiave esterna è impostato
- 22. Come posso verificare se il valore dell'array è vuoto?
- 23. Meteor: ANDROID_HOME non è impostato, anche se esso è impostato
- 24. document.getElementById() valore non impostato il valore
- 25. Come verificare se il valore è stato inserito correttamente o no?
- 26. Come verificare se il server DNS è impostato su 'ottieni automaticamente'
- 27. Verificare se è stato definito un metodo
- 28. Come rimuovere il testo sopra JSlider
- 29. Come verificare se il valore è nella lista
- 30. Sequenza dove NON è stato impostato
L'interfaccia grafica chiama internamente "setValue" quindi no way – Archer