Swing JToogleButton Vordergrundfarbe bei HTML String

lucifer

Mitglied
Hallo an alle.
ich habe folgende Fragen bzgl. setText mit einen HTML String :
Der Hintergrund ist, daß ich möchte, daß der Textsich auch über mehrere Zeilen erstrecken kann.

  1. Wie wird die Farbe bei Button 8 bzw. 9 ermittelt ? Beim Button 8 und 9 habe ich für den Text HTML übergeben und den Button 8 disabled. Mir ist nicht klar, warum hier verschiedene Farben für den Text verwendet werden ?
  2. Wenn ich die Schriftgröße bei den Buttons ändern möchte, müsste ich dann den getFont() && deriveFont(style, size) verwenden ? Bzgl. müsste ich für B8 und B9 den HTML String neu setzen ?




Java:
import java.awt.*;
import javax.swing.*;

public class ButtonWithHTMLText extends JFrame {
    JToggleButton b3 = new JToggleButton("T1");
    JToggleButton b4 = new JToggleButton("T2");

    JToggleButton b8 = new JToggleButton("<html>T3 diabled</html>");
    JToggleButton b9 = new JToggleButton("<html>T4 enabled</html>");

    ButtonWithHTMLText() {
        this.setLayout(new GridBagLayout());
        b4.setBackground(Color.WHITE);
        b4.setEnabled(false);
        b4.setBackground(Color.WHITE);

        b3.setText("Hallo TW1");

        b8.setEnabled(false);

        this.setLayout(new GridBagLayout());
        GridBagConstraints con3 = new GridBagConstraints() ;
        con3.gridx=0;
        con3.gridy = 0 ;
        con3.weightx = 1 ;
        con3.weighty = 1 ;
        con3.fill = GridBagConstraints.BOTH ;
        
        this.setLayout(new GridBagLayout());
        GridBagConstraints con4 = new GridBagConstraints() ;
        con4.gridx=0;
        con4.gridy = 1 ;
        con4.weightx = 1 ;
        con4.weighty = 1 ;
        con4.fill = GridBagConstraints.BOTH ;
        
        
        GridBagConstraints con8 = new GridBagConstraints() ;
        con8.gridx=0;
        con8.gridy = 2 ;
        con8.fill = GridBagConstraints.BOTH ;
        con8.weightx = 1 ;
        con8.weighty = 1 ;
        
        
        GridBagConstraints con9 = new GridBagConstraints() ;
        con9.gridx=0;
        con9.gridy = 3 ;
        con9.weightx = 1 ;
        con9.weighty = 1 ;
        con9.fill = GridBagConstraints.BOTH ;

        this.add(b3, con3);
        this.add(b4, con4);
        this.add(b8, con8);
        this.add(b9, con9);

    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        ButtonWithHTMLText tmp = new ButtonWithHTMLText();
        tmp.pack();
        tmp.setVisible(true);
    }

}
 

KrokoDiehl

Top Contributor
Look&Feels haben (über den UIManager) verschiedene Farben für aktiven und inaktiven Text. Daher kommen die Farben. Die müsstest du über UIManager.getColor("Button.disabledText") und UIManager.getColor("Button.foreground") herausfinden können.

Die Schriftart kannst du entweder über HTML-Tags oder über die setFont()-Methode setzen.
 

lucifer

Mitglied
Also der Versuch mittels UIManager Manager hat nicht geklappt bzw. sehe ich nicht, wo der Fehler ist.
Im nachfolgenden Code sollte der Button grün werden, wenn er selektiert wird.
Java:
import java.awt.*;
import java.util.*;
import java.util.Map.Entry;

import javax.swing.*;

public class TestButtonBackground extends JFrame {

    
    TestButtonBackground() {
        JButton btn = new JButton("Hallo") ;
        btn.setBackground(Color.YELLOW) ;
        btn.setForeground(Color.CYAN) ;
        this.setLayout(new GridBagLayout()) ;
        
        JToggleButton btn2 = new JToggleButton("esel");
        JRadioButton btn3 = new JRadioButton("Radio") ;
 
 
    
        Container container = this.getContentPane() ;
        container.setLayout(new GridBagLayout()) ;
        
        
        UIDefaults newDef = UIManager.getDefaults();
        Enumeration e = newDef.keys() ;
        while ( e.hasMoreElements() ) {
            String tmp = e.nextElement().toString() ;
            if (tmp!=null &&
                    (tmp.contains("background") || tmp.contains("select"))
                    && ((tmp.contains("Button") || tmp.contains("RadioButton") || tmp.contains("ToggleButton")) )) {
                System.out.println(tmp );
            }
            

        } 
        newDef.put("Button.select", Color.RED); ;
        newDef.put("ToggleButton.select", Color.GREEN) ;
        newDef.put("RadioButton.select", Color.MAGENTA) ;
        newDef.put("RadioButtonMenuItem.selectionBackground", Color.ORANGE) ;
        newDef.put("ToggleButton.shadow", Color.MAGENTA) ;
        
        
        
        btn2.setBackground(Color.CYAN) ;
        btn3.setBackground(Color.PINK) ;
        
 
        
        GridBagConstraints constraint1 = new GridBagConstraints()  ;
        constraint1.gridx = 0 ;
        constraint1.gridy = 0 ;
        constraint1.gridwidth = 1 ;
        constraint1.gridheight = 1 ;
        constraint1.weightx=1 ;
        constraint1.weighty=1 ;
        constraint1.fill = GridBagConstraints.BOTH ;
        
        
        GridBagConstraints constraint2 = new GridBagConstraints()  ;
        constraint2.gridx = 1 ;
        constraint2.gridy = 0 ;
        constraint2.gridwidth = 1 ;
        constraint2.gridheight = 1 ;
        constraint2.weightx=1 ;
        constraint2.weighty=1 ;
        constraint2.fill = GridBagConstraints.BOTH ;
        
        
        GridBagConstraints constraint3 = new GridBagConstraints()  ;
        constraint3.gridx = 2 ;
        constraint3.gridy = 0 ;
        constraint3.gridwidth = 1 ;
        constraint3.gridheight = 1 ;
        constraint3.weightx=1 ;
        constraint3.weighty=1 ;
        constraint3.fill = GridBagConstraints.BOTH ;
        
        GridBagConstraints constraint4 = new GridBagConstraints()  ;
        constraint4.gridx = 0 ;
        constraint4.gridy = 1 ;
        constraint4.gridwidth = 1 ;
        constraint4.gridheight = 1 ;
        constraint4.weightx=1 ;
        constraint4.weighty=1 ;
        constraint4.fill = GridBagConstraints.BOTH ;
        
        GridBagConstraints constraint5 = new GridBagConstraints()  ;
        constraint5.gridx = 0 ;
        constraint5.gridy = 1 ;
        constraint5.gridwidth = 1 ;
        constraint5.gridheight = 1 ;
        constraint5.weightx=1 ;
        constraint5.weighty=1 ;
        constraint5.fill = GridBagConstraints.BOTH ;
        
        
        
        container.add(btn, constraint1) ;
        container.add(btn2,constraint2) ;
        container.add(btn3, constraint3) ;
 
 
        
        
        
        System.out.println("\n") ;
        
        java.util.List<String> colorKeys = new ArrayList<String>();
        Set<Entry<Object, Object>> entries = UIManager.getLookAndFeelDefaults().entrySet();
        for (Entry entry : entries)
        {
            
            String tmp =  entry.getKey().toString() ;
              if (tmp!=null &&  tmp.contains("Button") || tmp.contains("RadioButton") || tmp.contains("ToggleButton"))  {
                  if (entry.getValue() instanceof Color)
                  {
                    colorKeys.add((String) entry.getKey());
                  }
               }
              }
            
       

       
           
        // sort the color keys
        Collections.sort(colorKeys);
        
        // print the color keys
        System.out.println("Colors:") ;
        for (String colorKey : colorKeys)
        {
          System.out.println(colorKey);
        }
        
        
        
        
        
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        TestButtonBackground tmp = new TestButtonBackground() ;
     
      
        tmp.pack() ;
        tmp.setVisible(true) ;

    }
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D JToogleButton - ToggleEffekt AWT, Swing, JavaFX & SWT 4
D Komponenten um weitere Hintergrund- bzw. Vordergrundfarbe erweitern AWT, Swing, JavaFX & SWT 11
izoards HTML Editor AWT, Swing, JavaFX & SWT 3
H setToolTipText ignoriert HTML-Formatierung des anzuzeigenden Strings AWT, Swing, JavaFX & SWT 4
Yonnig Lokale HTML-Datei in Java GUI rendern AWT, Swing, JavaFX & SWT 4
kodela HTML-tags für JLabel AWT, Swing, JavaFX & SWT 9
C HTML Editor Eingabemaske kafenio Ersatz AWT, Swing, JavaFX & SWT 7
A JavaFX Daten in eine HTML-Table mit JS schreiben AWT, Swing, JavaFX & SWT 3
T JTextPane ignoriert HTML Zeilenumbruch <br> tag wegen eigenem HTMLEditorKit AWT, Swing, JavaFX & SWT 5
E Java FX FXML Problem mit html Scriptausführung AWT, Swing, JavaFX & SWT 2
K Html Editor AWT, Swing, JavaFX & SWT 3
B Swing HTML in JLabels AWT, Swing, JavaFX & SWT 6
S jLabel HTML Formatierung AWT, Swing, JavaFX & SWT 2
B JavaFX Java FX Html Template AWT, Swing, JavaFX & SWT 0
F JavaFX JavaFX HTMLEditor-Eingabe in Textarea als HTML anzeigen AWT, Swing, JavaFX & SWT 2
D Swing Breite einer HTML Tabelle in einer JTextPane AWT, Swing, JavaFX & SWT 6
R Swing JTable : Header der Spalten ergänzen mit caption (wie bei html-table) AWT, Swing, JavaFX & SWT 2
I LookAndFeel HTML Auflösung - Online Editor programmieren AWT, Swing, JavaFX & SWT 2
T HTML mit Java AWT, Swing, JavaFX & SWT 1
U Label zeigt nicht überall HTML Zeichen AWT, Swing, JavaFX & SWT 3
N JLabel HTML mit custom Font AWT, Swing, JavaFX & SWT 0
H RCP(SWT) Browser-Widget zeigt keine locale HTML-Dateien an AWT, Swing, JavaFX & SWT 1
F Submit eines HTML-Formulars in Vaadin AWT, Swing, JavaFX & SWT 3
T Swing HTML Text aus JLabel ohne "HTML-Tags" in String einlesen AWT, Swing, JavaFX & SWT 5
J JApplet, HTML und access denied exitVM.0 AWT, Swing, JavaFX & SWT 3
H Swing JApplet - HTML - ClassNotFoundException AWT, Swing, JavaFX & SWT 7
G Swing HTML Version AWT, Swing, JavaFX & SWT 11
S HTML in Java einbinden AWT, Swing, JavaFX & SWT 4
B JEditorPane lädt keine Schriftfarbe in HTML AWT, Swing, JavaFX & SWT 2
J JEditorPane mit HTML füllen AWT, Swing, JavaFX & SWT 2
N Swing JTree TreeCellRenderer mit html und automatischen Zeilenumbruch AWT, Swing, JavaFX & SWT 8
N Swing KomponentenHöhe an html-Inhalt anpassen AWT, Swing, JavaFX & SWT 4
F Applet JApplet per html einbinden - Main class kann nicht gefunden werden AWT, Swing, JavaFX & SWT 15
C html browser in Application nutzen AWT, Swing, JavaFX & SWT 10
S SWT Anzeigen einer lokalen HTML-Seite im Browser Widget über RAP nicht möglich AWT, Swing, JavaFX & SWT 3
S HTML Syntaxhighlighting AWT, Swing, JavaFX & SWT 7
S SWT HTML-WYSIWUG-Editor AWT, Swing, JavaFX & SWT 3
R Swing Renderproblem bei HTML in einer JTextPane AWT, Swing, JavaFX & SWT 12
N Swing JTextPane zur Anzeige von HTML AWT, Swing, JavaFX & SWT 2
N Applet JButton soll html Datei aus einem Ordner öffnen AWT, Swing, JavaFX & SWT 2
H JScrollPane - JEditorPane und HTML-Tabelle AWT, Swing, JavaFX & SWT 2
H Swing JEditorPane und HTML AWT, Swing, JavaFX & SWT 3
D System.out.println() gibt html-Tags mit aus AWT, Swing, JavaFX & SWT 2
P Swing HTML-Renderer AWT, Swing, JavaFX & SWT 15
G Swing JCheckBox, setEnabled(false) und HTML Text Problem AWT, Swing, JavaFX & SWT 5
J 2D-Grafik Html in drawString() AWT, Swing, JavaFX & SWT 2
L Applet In HTML einbinden klappt einfach nicht AWT, Swing, JavaFX & SWT 5
X Frei nutzbarer HTML Editor AWT, Swing, JavaFX & SWT 13
B WYSIWYG-HTML-Editor / Validator für JAVA AWT, Swing, JavaFX & SWT 2
N JCombobox wie in HTML AWT, Swing, JavaFX & SWT 6
H Swing HTML in einem JEditorPane zeilenweise hinzufügen ohne Inhalt jedes Mal neu zu laden AWT, Swing, JavaFX & SWT 4
G Swing JEdtitorPane und HTML Image Seite AWT, Swing, JavaFX & SWT 2
C Swing JTextPane zeigt HTML-Text aus Variable nicht an :( AWT, Swing, JavaFX & SWT 3
P Swing html mit bilder drin AWT, Swing, JavaFX & SWT 12
destroflyer Wort im JLabel verlinken (per HTML) AWT, Swing, JavaFX & SWT 3
R Swing JTextComponent und HTML AWT, Swing, JavaFX & SWT 7
D Nodes eines statischen JTrees sollen auf Anker (Textmarken) in einer HTML-Datei zeigen AWT, Swing, JavaFX & SWT 8
S Swing HTML-Text in JEditorPane einfärben AWT, Swing, JavaFX & SWT 5
D Darstellung in Swing wie HTML? AWT, Swing, JavaFX & SWT 2
H Mit JLabel HTML - formatierten Text anzeigen AWT, Swing, JavaFX & SWT 14
M Swing Kein update bei simulierten HTML-Link AWT, Swing, JavaFX & SWT 4
B Grafiken in JLabel mittels html AWT, Swing, JavaFX & SWT 5
E Swing JTextPane Inhalt(Text und Bilder) als HTML text bekommen AWT, Swing, JavaFX & SWT 3
B JEditorPane - Text und Graphik in HTML speichern AWT, Swing, JavaFX & SWT 4
K Alternative zu Applet mit HTML-Einbindung AWT, Swing, JavaFX & SWT 11
D Swing JEditorPane mit HTML aber ohne Bilder AWT, Swing, JavaFX & SWT 3
S Swing Text -> HTML: Caret-Koordinaten verschoben AWT, Swing, JavaFX & SWT 6
S JEditorPane soll HTML und dann Text anzeigen..? AWT, Swing, JavaFX & SWT 5
T HTML und JEditorPane AWT, Swing, JavaFX & SWT 6
J JList & HTML AWT, Swing, JavaFX & SWT 2
T HTML Seite neu laden mittels Applet AWT, Swing, JavaFX & SWT 2
N Performanceprobleme mit JLabel und HTML content AWT, Swing, JavaFX & SWT 5
A Oberfläche wir mit html-Frames aufbauen AWT, Swing, JavaFX & SWT 11
C JTextPane HTML und eigene Tags AWT, Swing, JavaFX & SWT 10
W HTML-Text mit relativer URL in JEditorPane einlesen AWT, Swing, JavaFX & SWT 10
C Suche fertigen HTML editor AWT, Swing, JavaFX & SWT 2
B HTML in Swing Components (JLabel) AWT, Swing, JavaFX & SWT 7
M JEditorPane lädt HTML ohne Bilder AWT, Swing, JavaFX & SWT 2
M JEditorPane lädt HTML ohne Bilder AWT, Swing, JavaFX & SWT 2
G Hilfe beim Erstellen eines eigenen Html-Editors! AWT, Swing, JavaFX & SWT 4
S drawString für HTML-Text? AWT, Swing, JavaFX & SWT 7
G Frage zu Labels mit html AWT, Swing, JavaFX & SWT 3
P HTML darstellen mit Java AWT, Swing, JavaFX & SWT 4
GilbertGrape Fehler bei HTML in JTextPane AWT, Swing, JavaFX & SWT 2
ARadauer swing html wysiwyg componente AWT, Swing, JavaFX & SWT 6
V "Anker" wie in HTML für JScrollPane? AWT, Swing, JavaFX & SWT 2
M html im Titel von JFrame AWT, Swing, JavaFX & SWT 9
M html aus einem Stream Laden und Anzeigen AWT, Swing, JavaFX & SWT 4
T Öffnen von SWT-Dialogboxen durch HTML-Link in HTML-Code AWT, Swing, JavaFX & SWT 4
B JTextPane und Image importieren in HTML String. AWT, Swing, JavaFX & SWT 2
J Html in JTextPane anzeigen? AWT, Swing, JavaFX & SWT 2
V Swing to HTML? AWT, Swing, JavaFX & SWT 4
A HTML-Datei öffnen AWT, Swing, JavaFX & SWT 3
A Noch mal Zusammenarbeit Java und HTML AWT, Swing, JavaFX & SWT 4
A Java und HTML AWT, Swing, JavaFX & SWT 8
R HTML Hintergrund für Swing - Componenten AWT, Swing, JavaFX & SWT 2
G Problem mit Anzeige von HTML AWT, Swing, JavaFX & SWT 5
G Probleme mit Druck von pdf und html AWT, Swing, JavaFX & SWT 2
DeeDee0815 JEditorPane + HTML + <img src=file> + JAR = FALSE AWT, Swing, JavaFX & SWT 3
F HTML anzeigen AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben