tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
492
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von zer0
    zer0 zer0 ist offline Mitglied Brokat
    Registriert seit
    Oct 2009
    Beiträge
    323
    Hallo,

    meine JButtons sollen ein anderes Look & Feel haben als der JFrame. Der Grund ist das ich die Buttons einfärben will, das geht aber mit den Windows Buttons nicht. Für meine weiteren für Komponenten will ich aber das Windows Look & Feel benutzen.

    Gibt es da eine Möglichkeit?
     

  2. #2
    Kai008 Kai008 ist offline Mitglied Brillant
    Registriert seit
    May 2008
    Ort
    Brunn/Geb. (Niederösterreich)
    Beiträge
    944
    Blog-Einträge
    1
    Du kannst mal versuchen (noch nie damit gearbeitet, deshalb event. unkontrolliertes Verhalten), per UIManager ein anderes LnF zu setzen, bevor du den Button erzeugst. Damit hat der Button dann ein anderes.
     
    Mein kleiner webstart Projektplaner:
    http://178.77.101.236/ppws/
    Ideen, Verbesserungsvorschläge, Bugsmeldungen und allg. Kritik erwünscht und erbeten.

    Danke. :)

  3. #3
    Avatar von zerix
    zerix zerix ist offline Hausmeister
    tutorials.de Moderator
    Registriert seit
    May 2005
    Beiträge
    4.335
    Hallo,

    bei einem LookAndFeel gibt es für alles UI-Klassen, beispielsweise für einen Button eine ButtonUI-Klasse. Diese kannst du für jede Komponente setzen. Also könntest du deinem Button einfach eine andere UI setzen.

    Code :
    1
    2
    3
    
    JButton button  = new JButton();
     
    button.setUI(WindowsButtonUI.createUI(button));

    Gruß

    Sascha
     
    Es ist schwer Allwissend zu sein. Aber ich komme damit klar. ;-)

  4. #4
    Avatar von zer0
    zer0 zer0 ist offline Mitglied Brokat
    Registriert seit
    Oct 2009
    Beiträge
    323
    Zitat Zitat von Sascha Schirra Beitrag anzeigen
    Hallo,

    bei einem LookAndFeel gibt es für alles UI-Klassen, beispielsweise für einen Button eine ButtonUI-Klasse. Diese kannst du für jede Komponente setzen. Also könntest du deinem Button einfach eine andere UI setzen.

    Code :
    1
    2
    3
    
    JButton button  = new JButton();
     
    button.setUI(WindowsButtonUI.createUI(button));

    Gruß

    Sascha
    Hallo,

    ich habs mal so probiert:
    Code java:
    1
    
    buttons[i].setUI(MetalButtonUI.createUI(buttons[i]));

    bekomme folgenden Fehler angezeigt:
    Code :
    1
    
    The method setUI(ComponentUI) from the type JComponent is not visible

    Was ist da los?
     

  5. #5
    Avatar von zerix
    zerix zerix ist offline Hausmeister
    tutorials.de Moderator
    Registriert seit
    May 2005
    Beiträge
    4.335
    Ich hatte es hier geschrieben, deshalb hab ich das gar nicht bedacht. Du musst es casten, da sonst versucht wird, eine protected-Methode zu holen.

    Code :
    1
    
    buttons[i].setUI((ButtonUI)MetalButtonUI.createUI(buttons[i]));

    Gruß

    Sascha
     
    Es ist schwer Allwissend zu sein. Aber ich komme damit klar. ;-)

Ähnliche Themen

  1. Eigenes Look & Feel machen!
    Von javaprogger1987 im Forum Java
    Antworten: 11
    Letzter Beitrag: 15.03.10, 10:30
  2. JFrames transparent machen
    Von moemaster im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 9
    Letzter Beitrag: 17.11.08, 07:26
  3. Freie Look an Feels?
    Von Smily0412 im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 11.02.08, 14:17
  4. Antworten: 8
    Letzter Beitrag: 09.08.04, 18:16