Swing : Einstellung JButton hintergrund

Ich möchte die Hintergrundfarbe von JButton. Für die, die ich benutze
setBackground () - Methode.

Diese Methode gerade legt die Rahmenfarbe der Schaltfläche und nicht die ganze Taste, die die angegebene Farbe. Warum ist das so ? Dies ist die einzige Methode, um die Hintergrundfarbe eines Buttons. Wo bin ich einen Fehler zu machen, durch die Sie setzt nur die Grenze der Knopf der angegebenen Farbe und nicht die tatsächliche button ?

Code :

    account_btn.setAction(actionMap.get("AccountingClicked")); //NOI18N
    account_btn.setBackground(Utility.getBackgroundColor());
    account_btn.setFont(Utility.getButtonFont());
    account_btn.setForeground(Utility.getTextColor());
    org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(cashaccountingapp.CashAccountingApp.class).getContext().getResourceMap(MainPanel.class);
    account_btn.setText(resourceMap.getString("account_btn.text")); //NOI18N
    account_btn.setBorderPainted(false);
    account_btn.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    account_btn.setName("account_btn"); //NOI18N
    account_btn.setOpaque(true);
    add(account_btn);

Ergebnis :
Swing : Einstellung JButton hintergrund

Habe versucht Einstellung setOpaque(true) auch. Aber Sie können sehen, die Ergebnisse der account_btn also "Buchhaltung". setOpaque scheint, haben keine Wirkung.

Jede Idee.

LÖSUNG :

Einstellung L&F

    private void initLookandFeel() {
    try {
        System.out.println("DEFAULT Look & Feel = " + UIManager.getLookAndFeelDefaults().toString());
        UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
        javax.swing.SwingUtilities.updateComponentTreeUI(this.mainPanel);
        System.out.println("Look & Feel = " + UIManager.getLookAndFeel().toString());
    } catch(Exception e) { ..... }
    }

Nenne ich initLookandFeel() nach initComponents() und update auch mein mainPanel. Auch erforderlich, um zu aktualisieren meine dynamisch Hinzugefügt-panel an der anfänglichen Bühne ist, dann keine Notwendigkeit, überhaupt nichts mehr.

  • Was PLAF? Wo ist Ihre SSCCE?
  • Ich bin nicht sicher, ob der edit-um deine Frage war ein Versuch, Adresse Kommentare von mir. Wenn das der Fall ist, scheinen Sie verpasst mein Punkt.
InformationsquelleAutor Tvd | 2011-11-19
Schreibe einen Kommentar