Frage

Hallo, ich möchte neben dem Befehl auf dem Display einen Scheck (wie in einer Zeckenmarke) einfügen. Gibt es eine Möglichkeit, sie implementieren zu können?

War es hilfreich?

Lösung

Sie können die neue Klasse mit implementieren der ListCellRenderer -Schnittstelle erstellen oder mit der StandardlistCellRenderer -Klasse erweitern. Implementieren Sie dann alle abstrakten Methoden und überschreiben Sie GetListCellRendererComponent -Methoden wie diese.

public Component getListCellRendererComponent(List list, Object value, 
                                             int index, boolean isSelected) {

        if (isSelected && list.hasFocus()) {
// do selected style that means selected command style
        } else {
// do unselected style that means unselected command style    
        }
return this;
    }

Zu Ihrer Referenz sehen Sie dies Verknüpfung.

Schließlich müssen Sie diese Renderer -Klasse an die SetMenurenderer -Methode übergeben.

Für einzelne Form bedeutet dies, dies zu tun,

Form form = new Form();
form.setMenuRenderer(new MenuRenderer()); // pass your created render class

Für alle Form bedeutet dies, dies zu tun,

UIManager.getInstance().getLookAndFeel()
          .setMenuRenderer(new MenuRenderer()); // pass your created render class
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top