Vorrei impostare un numero intero da memorizzare in un QWidget
, e penso che la funzione membro setUserData
farebbe il trucco ma non riesco a trovare alcuna documentazione. Qualche suggerimento?Come impostare i dati utente per un QWidget?
risposta
Si potrebbe cercare QObject::setProperty()
(che è naturalmente ereditato da QWidget
).
È possibile assegnare un oggetto (ad esempio della classe Foo) come una proprietà e recuperarlo quando richiesto, invece di utilizzare solo stringhe, inte o altre proprietà di tipi di dati semplici? – SexyBeast
Non sono sicuro perché non sono un esperto di QT. Ma la soluzione che ho postato sotto di creare un tipo ereditato funzionerebbe sicuramente per un oggetto arbitrario. Sostituire semplicemente "Data" con "Foo". –
Non sono un esperto di QT, ma perché non creare solo una classe che eredita da QWidget
e ha un numero intero? In questo modo:
class MyDerivedWidget : public QWidget
{
public:
MyDerivedWidget();
private:
Data *myUserData;
};
O se ti ostini a usare il setUserData
cassa l'ultimo post here.
È, se fai esplicito MyDerivedWidget (QWidget parent = 0) {}, semplice ed efficace, ancora, suona un po 'hacky per me, ma la risposta utile così ho votato, thx. –
IMO, questo è il meno hacky delle due risposte. Se vuoi memorizzare i dati in un QWidget (usando solo una normale struttura), il modo corretto sarebbe di ereditare la classe che desideri, aggiungere più funzionalità e farlo 'giusto'. Atleast ereditando, saresti in grado di aggiungere accessors e il simile per renderlo più utile del semplice passaggio di un QWidget standard con una proprietà casuale aggiuntiva ... – g19fanatic
@ g19fanatic, rispettosamente in disaccordo (e apparentemente i designer della biblioteca sono sul mio lato, altrimenti 'setProperty()' non esisterebbe). A volte può essere molto conveniente avere un semplice "bag of data" associato a un'istanza, senza dover progettare e mantenere un'intera sottoclasse solo per ottenerlo. –
- 1. Come impostare il colore di sfondo QWidget?
- 2. Come recuperare i dati da QVariant per un utente?
- 3. Come unire i dati utente dopo l'accesso?
- 4. Come controllare i dati utente in lua
- 5. Come crittografare i dati utente in Firebase
- 6. Select2: come impostare i dati dopo init?
- 7. Come dovrei memorizzare i dati per utente in WinForms?
- 8. Firebase - Come scrivere/leggere i dati per utente dopo l'autenticazione
- 9. Come impostare i dati all'interno di un QAbstractTableModel
- 10. Come impostare un nome utente predefinito per HTTPS git push?
- 11. Come posso impostare l'agente utente nell'app Cordova
- 12. Come creare screenshot di QWidget?
- 13. Trovare un QWidget 3rd party con il codice iniettato e QWidget :: trovare (hwnd)
- 14. Arresta utente per impostare posizione su RecyclerView
- 15. Impostare "alter sessione" predefinito per un utente Oracle
- 16. Ubuntu AMI non carica i dati utente
- 17. La memoria locale HTML5 separa i dati per utente?
- 18. Android - AVD I dati utente non funzionano
- 19. come impostare un array come variabile utente mysql
- 20. Nascondere un QWidget su un QToolbar?
- 21. Attendere QWidget chiude
- 22. Come impostare un minimo dei quadrati ponderati in r per i dati eteroschedastici?
- 23. Impostare l'immagine del profilo per un utente di prova
- 24. Come proteggere i dati utente nel database con Rails?
- 25. Come impostare l'opacità per un grafico?
- 26. Come ottenere i dati utente in forma in Symfony 1.2?
- 27. Trascinamento di un QWidget in QT 5
- 28. ElasticSearch, datastore per dati utente e social?
- 29. come ottenere i dati utente da Facebook SDK su iOS
- 30. Come ottenere i dati utente dopo l'accesso con LinkedIn
QObject :: setUserData è contrassegnato come "internal" - è probabilmente consigliabile evitare di utilizzarlo. –