2012-04-03 11 views
25

Come ottenere il colore di sfondo predefinito dei componenti di rotazione? Intendo il colore di sfondo predefinito di JPanel?Acquisisci il colore di sfondo predefinito del componente altalena

+1

Forse stai cercando qualcosa di simile: http://stackoverflow.com/questions/2739704/getting-panel-color? – ranman

+0

Il fatto che mi hai chiesto mi fa sospettare che ci sia qualcosa di sbagliato nel design della GUI. Di cosa tratta il colore di default che ti serve non può essere ordinato (meglio) da 'super.paintComponent (g)'? BTW - Uno Swing 'JPanel' tipicamente (dipendente da PLAF) ha un colore BG diverso da un' JTable' o 'JTextField'. Stai attento a pensare di avere il 'colore' BG. –

risposta

49

Per ottenere DI DEFAULT colore che pannello utilizzerà quando viene creato l'uso:

Color color = UIManager.getColor ("Panel.background"); 

Per ottenere CORRENTE uso di fondo pannello:

panel.getBackground(); 

Per un elenco completo di UIManager colore proprietà, vedere http://alvinalexander.com/java/java-uimanager-color-keys-list.

+0

Restituisce il "colore PREDEFINITO che il pannello utilizzerà quando viene creato"? Oppure restituisce il valore dopo l'ultimo 'UIManager.put (" Panel.background ", color); ' ? – c0der

+0

Bene, se vuoi approfondire - 'JPanel' non ha un valore predefinito, viene impostato dall'istanza dell'interfaccia utente del pannello corrente sull'installazione dell'interfaccia utente. Solitamente viene preso dal valore della tabella dei valori di default UI sotto la chiave 'Panel.background'. Puoi, ovviamente, ridefinire quel valore - in tal caso quello sarà il colore di sfondo del pannello di default e sarà usato per tutti i nuovi pannelli creati dopo averlo ridefinito. –

Problemi correlati