Ich mache ein Spiel und wenn ich eine Taste mit setEnabled(false);
deaktivieren, wird die Schaltfläche grau, die mit den anderen Farben im Spiel zusammenstößt. Ist es eine Möglichkeit, die Farbe der Schaltfläche zu ändern, wenn sie deaktiviert ist?Wie man das Aussehen eines deaktivierten JButton in Java ändert
Antwort
Sie möchten die Look and Feel ändern, die Sie verwenden. Es gibt Tonnen zum Download und Sie können natürlich Ihre eigenen erstellen.
Sie können auch ein Sperr Symbol mit JButton.setDisableIcon()
ich bin nicht zu 100% auf das, aber ich denke, dass Sie die Farbe Methode der Glasspane der Schaltfläche überschreiben können es mit der Farbe Ihrer Wahl zu überlagern.
hier ist ein Tutorial auf den Scheiben eines Behälters:
http://java.sun.com/docs/books/tutorial/uiswing/components/rootpane.html
Wenn Sie über den Text sprechen, dann könnten Sie die UIManager verwenden, um die behinderten Vordergrundfarbe zu ändern. Schauen Sie sich die UIManager Defaults.
Sie können Ihrer Schaltfläche HTML-Code hinzufügen, was eine große Flexibilität bietet, selbst bei deaktivierten Schaltflächen.
Example: button.setText("<html><font color = red>3</font></html>");
Funktioniert gut als schnelle Abhilfe! Ich hatte das selbe Problem wie der Starter der Frage, ich programmierte ein kleines Spiel, das oft deaktivierte Tasten benutzt. – Bernd
Aufruf setContentAreaFilled (false) auf Knopfdruck eine Schaltfläche aussehen lassen, als ob es deaktiviert ist, auch wenn es nicht ist. Es scheint jedoch nicht anders herum zu funktionieren.
Wenn Sie Ihre Schaltfläche nicht aktiviert zu aktivieren brauchen, dann ist es eine schöne Lösung.
Die ButtonUI
der Taste steuert die behinderte Textfarbe. Zum Glück können Sie es ändern:
button1.setUI(new MetalButtonUI() {
protected Color getDisabledTextColor() {
return Color.BLUE;
}
});
button1.setEnabled(false);
button2.setUI(new MetalButtonUI() {
protected Color getDisabledTextColor() {
return Color.RED;
}
});
button2.setEnabled(false);
- 1. Ändern Sie das Aussehen eines deaktivierten Links
- 2. Wie ändert man das Aussehen von ListView?
- 3. Wie ändert man das Erscheinungsbild einer deaktivierten Schaltfläche in vb.net?
- 4. Ändern Aussehen einer deaktivierten Schaltfläche in PHP
- 5. Wie man das Thema eines Programms ändert
- 6. Wie ändere ich das Bild eines JButton?
- 7. Erstellen eines benutzerdefinierten JButton in Java
- 8. Wie ändert man die Farbe der deaktivierten Bootstrap-Taste?
- 9. Wie ändert sich das Aussehen des Cursors in einem EditText?
- 10. Wie ändern Sie das Aussehen eines Kontrollkästchens?
- 11. Wie soll das aussehen?
- 12. Wie kann man das Aussehen einer SeekBar in Android anpassen?
- 13. Wie ändert man das visuelle Verhalten eines ListViewItem in UWP?
- 14. Wie ändert man das Cursor-Icon in Java?
- 15. Wie ändert man das MBeanAttributeInfo-Beschreibungsfeld in Java 6?
- 16. Beflockungsskizze: Wie man das Aussehen von Dreiecken (Boids) in PNG-Bild ändert
- 17. Wie ändert man das Standardhintergrundbild von jdesktopane?
- 18. Wie ändert man das Anwendungssymbol?
- 19. Wie ändere ich das Aussehen eines inaktiven Fensters in XAML?
- 20. Wie ändert man das Werkzeug rect eines CToolTipCtrl?
- 21. Wie ändert man dynamisch das CSS eines Pseudoelements mit JQuery?
- 22. Wie ändert man das Bild eines Knopfes mit jedem Klick?
- 23. Wie ändert man JButton Text in einer Klasse basierend auf Daten aus einer anderen Klasse?
- 24. Wie ändert man das Ausführungsverzeichnis in Phing?
- 25. Wie ändert man das Kategorieseitenlayout in Magento?
- 26. Wie ändert man das Puffercodierungssystem in Emacs?
- 27. Wie ändert man das letzte Element eines Arrays?
- 28. Wie ändert man das Aussehen des Angular2 Akkordeons? (Zum Beispiel, Schriftgröße ändern)
- 29. Wie ändert man das Verhalten von Stubs?
- 30. Java JButton zeigt in einem Panel aber nicht das andere
Einzelne Komponenten haben keine Glasscheibe. Die Glasscheibe ist für den gesamten Rahmen. – camickr