Oberfläche wird nicht koreckt gezeichnet

Status
Nicht offen für weitere Antworten.

wakoz

Aktives Mitglied
Hallo
Ich erzeuge ein Frame das ein bestimmtes Look and Feel besitzen soll, leider wird das Frame und beinhaltete Panel nicht mit diesem angezeigt aber die Kind elemente (Dialoge) übernehmen das Look and Fell???:L weiß einer rat für mich?


Java:
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Checkbox;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Label;

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;

import start.Start;

import xmlparser.listfill;
import xmlparser.splittedlist;

public class GUI {
	public Checkbox CB1, CB2, CB3;
	public String question, CB1Name, CB2Name, CB3Name;
	private String ButtonLabel = "Next ->";
	private Button next;
	public int questioncount = 0;
	private int counter;
	private Label lab, sheetlab;

	public JFrame jframe = new JFrame("Quis");
	private JPanel buttonpanel = new JPanel();
	private JPanel panel = new JPanel();



	public void init() {
		lookAndFeelSetzen();
		createwindow();
		addpanel();
		addbuttonpanel();
		addjframe();
		changesite();
	}

	public void changesite(){
		sheetlab.setText(questioncount + " Beantwortet von " + (counter));
		buflist = list2.getsplittedQuislistbyIndex(questioncount);
		question = buflist.getQuislistbyIndex(1);
		CB1Name = buflist.getQuislistbyIndex(3);
		CB2Name = buflist.getQuislistbyIndex(7);
		CB3Name = buflist.getQuislistbyIndex(11);
		lab.setText(question);
		CB1.setLabel(CB1Name);
		CB2.setLabel(CB2Name);
		CB3.setLabel(CB3Name);
		CB1.setState(false);
		CB2.setState(false);
		CB3.setState(false);
		questioncount++;		
	}
	
	private void createwindow() {
		
		jframe.setLayout(new BorderLayout()); // Layout des Fensters wird selbst festgelegt!
		jframe.setBounds(200, 100, 700, 200); // Fensterposition und Größe festlegen
		jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		lookAndFeelSetzen();
	}

	private void addjframe() {
		jframe.add(BorderLayout.PAGE_END, buttonpanel);
		jframe.add(BorderLayout.CENTER, panel);
		jframe.setVisible(true);
	}

	private void addbuttonpanel() {
		buttonpanel.setLayout(new FlowLayout());
		sheetlab = new Label(questioncount + " Beantwortet von "+(counter));
		buttonpanel.add(sheetlab);
		next = new Button(ButtonLabel);
		next.addActionListener(Start.ne);
		buttonpanel.add(next);
	}

	private void addpanel() {
		panel.setLayout(new GridLayout(4, 0));
		lab = new Label(question);
		panel.add(lab);
		CB1 = new Checkbox(CB1Name, false);
		panel.add(CB1);
		CB2 = new Checkbox(CB2Name, false);
		panel.add(CB2);
		CB3 = new Checkbox(CB3Name, false);
		panel.add(CB3);
		panel.setSize(700, 200);
	}
		
	private void lookAndFeelSetzen() {
		try {
			if (System.getProperty("os.name").toString().equals("Mac OS X")) {
				UIManager.setLookAndFeel("apple.laf.AquaLookAndFeel");
			} else {
				UIManager
						.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
			}
		} catch (ClassNotFoundException e1) {
			// e1.printStackTrace();
		} catch (InstantiationException e1) {
			// e1.printStackTrace();
		} catch (IllegalAccessException e1) {
			// e1.printStackTrace();
		} catch (UnsupportedLookAndFeelException e1) {
			// e1.printStackTrace();
		}
	}	
}

das hier ist nur ein auszug einige methoden die mit dem inhalt der label zu tuhen haben sind weggelassen, so wie weitere classen die die Mainmethode und eventlistener stellen
 
B

Beni

Gast
Das hier:
Java:
    public JFrame jframe = new JFrame("Quis");
    private JPanel buttonpanel = new JPanel();
    private JPanel panel = new JPanel();
... wird aufgerufen bevor du das LaF änderst, deshalb benutzt es noch das alte LaF.

Mögliche Lösung: das Frame und die Panels später erzeugen, oder mit Hilfer der Methode "SwingUtilities.updateComponentTreeUI" das LaF des Frames und seiner Kinder später aktualisieren.
 
S

SlaterB

Gast
ein AWT-Button scheint auch keine Notiz vom Look & Feel zu nehmen,
verwende lieber einheitlich Swing-Komponenten, also JButton, JLabel usw., das ist auch generell unabhängig vom L&F zu empfehlen
 

wakoz

Aktives Mitglied
Das hier:
Java:
    public JFrame jframe = new JFrame("Quis");
    private JPanel buttonpanel = new JPanel();
    private JPanel panel = new JPanel();
... wird aufgerufen bevor du das LaF änderst, deshalb benutzt es noch das alte LaF.

Mögliche Lösung: das Frame und die Panels später erzeugen, oder mit Hilfer der Methode "SwingUtilities.updateComponentTreeUI" das LaF des Frames und seiner Kinder später aktualisieren.
Mögliche lösung fast koreckt, ich schäme mich!
Der Button ignoriert immer Look and Feel noch obwohl Später erzeugt, der Rest ist nun Koreckt.


ein AWT-Button scheint auch keine Notiz vom Look & Feel zu nehmen,
verwende lieber einheitlich Swing-Komponenten, also JButton, JLabel usw., das ist auch generell unabhängig vom L&F zu empfehlen

Mit Swing Button kenne ich mich nicht sooo aus, wie müste ich den
Java:
next = new Button(ButtonLabel);
		next.addActionListener(Start.ne);
		buttonpanel.add(next);
ändern damit ich den button mit swing darstelle bzw welchen swing import müste ich wählen? was ich eben getestet hab war nicht funktionstüchtig da die Butten benennung nicht funktionierte bzw war das add auf den listener und das panel nicht möglich???:L



eine weitere frage die ich hätte: Gibt es eine setLocation methode die ein object mittig vom Frame anzeigen kann? bzw. wie müssten dann die angaben lauten damit ein Objekt mittig liegt(unabhängig ob andere objekte drum herum liegen wie beim Border oder Fenster größe)?
 

wakoz

Aktives Mitglied
new JButton statt new Button, Variablendeklaration + imports anpassen,
aber dann doch einfach ganz normal aus einem Tutorial lernen,
sofern kein Testprogramm mit JButton steht, brauchst du über Look & Feel kaum nachdenken

setLocation gibt's zusammen mit null-Layout, aber nicht zu empfehlen..
Lesson: Laying Out Components Within a Container (The Java™ Tutorials > Creating a GUI with JFC/Swing)

Danke "J" vorm Button hat noch gefehlt nun sieht es aus wie es soll.

Danke
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Swing-Oberfläche wird auf einiges PCs nicht korrekt dargeste AWT, Swing, JavaFX & SWT 19
I Swing-Oberfläche wird nicht korrekt gezeichnet AWT, Swing, JavaFX & SWT 6
F Oberfläche wird nicht gestartet! AWT, Swing, JavaFX & SWT 2
L wie kann ich diese Oberfläche bauen ohne das gestreckt wird? AWT, Swing, JavaFX & SWT 18
N Wie kann ich zwei Grafiken in einer Oberfläche anzeigen lassen? AWT, Swing, JavaFX & SWT 8
D Objekte einer Oberfläche in eine Datei/Ordner speichern AWT, Swing, JavaFX & SWT 9
A Oberfläche mit zwei Klassen und actionlistener verbinden AWT, Swing, JavaFX & SWT 7
S Swing Oberfläche rekusiv updaten mit updateUi() AWT, Swing, JavaFX & SWT 10
M LookAndFeel Oberfläche wie Eclipse/Business Objects oder Solvatio AWT, Swing, JavaFX & SWT 2
K Initialisierung von Oberfläche Richtig? AWT, Swing, JavaFX & SWT 5
T Java Swing Oberfläche aktualisiert sich nicht AWT, Swing, JavaFX & SWT 2
K Eclipse-Java Export/Import mit Oberfläche AWT, Swing, JavaFX & SWT 2
D Swing JComponent zeichnen ohne sie zur Oberfläche hinzuzufügen AWT, Swing, JavaFX & SWT 2
J prinzipielles verständnis für Oberfläche/Code-trennung AWT, Swing, JavaFX & SWT 5
T wieso leere Oberfläche? AWT, Swing, JavaFX & SWT 5
S Flickr Bilder in Gui Oberfläche AWT, Swing, JavaFX & SWT 21
cedi Swing Problem mit Grafischer Oberfläche AWT, Swing, JavaFX & SWT 8
E Swing Grafische Oberfläche zur Ordnerauswahl AWT, Swing, JavaFX & SWT 6
Z Component für File-Browser ähnliche Oberfläche AWT, Swing, JavaFX & SWT 6
B Wegfindung - Oberfläche AWT, Swing, JavaFX & SWT 3
P Erste Versuche einer Grafischen Oberfläche AWT, Swing, JavaFX & SWT 8
S AWT Oberfläche integriert sich nicht in GTK-Theme AWT, Swing, JavaFX & SWT 5
Private Void Swing "Vier Gewinnt"-Oberfläche AWT, Swing, JavaFX & SWT 7
L Eigene Design Oberfläche erstellen AWT, Swing, JavaFX & SWT 3
D Mehrere Biler auf einer Oberfläche AWT, Swing, JavaFX & SWT 6
G Swing skalierbare Oberfläche AWT, Swing, JavaFX & SWT 2
Jenny87 AWT Tic Tac Toe oberfläche AWT, Swing, JavaFX & SWT 20
dl85hej meine erste Oberfläche AWT, Swing, JavaFX & SWT 3
multiholle Oberfläche MP3-Player AWT, Swing, JavaFX & SWT 2
A Oberfläche wir mit html-Frames aufbauen AWT, Swing, JavaFX & SWT 11
H JAVA Fenster Oberfläche AWT, Swing, JavaFX & SWT 3
S In JavaSwing Mailversand mit Oberfläche AWT, Swing, JavaFX & SWT 2
F Wie Oberfläche verbessern? (JButtons, Textfeld verkleinern) AWT, Swing, JavaFX & SWT 5
M Aus Swing Oberfläche Bild erzeugen AWT, Swing, JavaFX & SWT 39
F Zugriff auf Oberfläche bzw Trennung GUI / Logik AWT, Swing, JavaFX & SWT 3
T Problem mit Oberfläche und Thread AWT, Swing, JavaFX & SWT 10
G Ansprechende Java Oberfläche entwickeln AWT, Swing, JavaFX & SWT 10
B Probleme mit Öffnen einer GUI Oberfläche AWT, Swing, JavaFX & SWT 2
G Oberfläche löschen und neue erstellen AWT, Swing, JavaFX & SWT 4
R RAD Oberfläche für Eclipse gesucht AWT, Swing, JavaFX & SWT 4
G Tooltips auf grafischer Oberfläche AWT, Swing, JavaFX & SWT 2
A Background Image auf SWT Oberfläche legen AWT, Swing, JavaFX & SWT 3
J Anordung der Objekte in der Oberfläche? AWT, Swing, JavaFX & SWT 3
B Oberfläche mit SWT AWT, Swing, JavaFX & SWT 5
S Berechtigungssystem für Swing-Oberfläche AWT, Swing, JavaFX & SWT 2
M Grafische Objekte beliebig auf einer Oberfläche verschieben AWT, Swing, JavaFX & SWT 3
T Eigene grafische Oberfläche AWT, Swing, JavaFX & SWT 7
G JTree in Oberfläche Integrieren?? AWT, Swing, JavaFX & SWT 6
D Trennung von Programm und Oberfläche AWT, Swing, JavaFX & SWT 3
M Java Oberfläche per Drag&Drop -- Wie bei Visual Basic ! AWT, Swing, JavaFX & SWT 5
P Methode wird nicht überprüft AWT, Swing, JavaFX & SWT 4
P paintComponent-Methode wird dauernd neu aufgerufen AWT, Swing, JavaFX & SWT 2
G JavaFX LineChart Datenpunkte Markierung wird abgeschnitten AWT, Swing, JavaFX & SWT 1
P JTextField wird nur sehr klein angezeigt und verändert die Größe nicht AWT, Swing, JavaFX & SWT 3
Telisti Javafx Image wird nicht richtig integiert AWT, Swing, JavaFX & SWT 8
J Netbeans die JavaFX-Anwendung wird nicht ausgeführt AWT, Swing, JavaFX & SWT 16
N €-Zeichen wird nicht akzeptiert AWT, Swing, JavaFX & SWT 4
G Problem mit der Anzeige von jLabel. Unlesbar wenn der Text geändert wird. AWT, Swing, JavaFX & SWT 28
berserkerdq2 Wie füge ich ein Bild in javafx mit dem Scenebuilder ein, das automatisch mitgezogen wird, wenn das Fenster vergrößert wird oder Vollbildmodus AWT, Swing, JavaFX & SWT 6
L jComboBox Actionlistener wird beim erstmaligen Befüllen getriggert AWT, Swing, JavaFX & SWT 7
_user_q Objekt.setSelected(false), wenn es nicht mehr fokussiert wird AWT, Swing, JavaFX & SWT 2
S Javafx getResource-Pfad wird nicht erkannt AWT, Swing, JavaFX & SWT 7
U Warum wird zweimal die Affinetransformation estellt (2Dgraphics, Java)? AWT, Swing, JavaFX & SWT 31
DonBronson Gezeichnetes Objekt verschwindet nachdem erneut gezeichnet wird AWT, Swing, JavaFX & SWT 8
ProggersWorld JavaFX TextArea BackgroundImage wird nicht angezeigt AWT, Swing, JavaFX & SWT 3
M Bild wird nicht geladen obwohl sie gefunden wird AWT, Swing, JavaFX & SWT 0
M Nach Export als Runnable Jar wird css nicht merh gefunden AWT, Swing, JavaFX & SWT 22
izoards Outlook Mail erstellen - Signatur wird nicht angezeigt. AWT, Swing, JavaFX & SWT 3
J actionperformed wird nicht aufgerufen/ repaint() AWT, Swing, JavaFX & SWT 6
J Swing Komponente wird unpassend angepasst in der Größe AWT, Swing, JavaFX & SWT 35
J Java FX NullPointerException, ObservableList wird in View nicht angezeigt.. AWT, Swing, JavaFX & SWT 34
S Next_Button wird nicht ausgeführt. AWT, Swing, JavaFX & SWT 6
FrittenFritze Ein Problem mit der CSSBox, die Größe wird nicht angepasst AWT, Swing, JavaFX & SWT 5
CptK windowClosed() nur aufrufen, wenn Fenster nicht über Button geschlossen wird AWT, Swing, JavaFX & SWT 1
J Komponente wird manchmal falsch gezeichnet AWT, Swing, JavaFX & SWT 0
J Swing JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 6
JMölleri Swing Image wird unscharf dargestellt AWT, Swing, JavaFX & SWT 2
JojoSand Java Programm wird nicht gestartet - keinen Fehlerhinweis AWT, Swing, JavaFX & SWT 9
R Text vom Jlabel wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
D JavaFX Bearbeitetes Bild wird nicht gespeichert AWT, Swing, JavaFX & SWT 9
J setOnCloseRequest wird nicht ausgelöst AWT, Swing, JavaFX & SWT 3
P JavaFX Fenster wird nicht angezeigt (Mac) AWT, Swing, JavaFX & SWT 13
B JavaFX Bei Scenen-Wechsel im primaryStage wird aktuelle Fenstergröße nicht mit übernommen AWT, Swing, JavaFX & SWT 16
B JavaFX Warum wird hier eine NullPointer-Exception geworfen? AWT, Swing, JavaFX & SWT 7
M JavaFX javaFX Label-Text wird nicht gesetzt AWT, Swing, JavaFX & SWT 3
O Swing "Eigenes" JPanel wird dem JScrollPane nicht hinzugefügt AWT, Swing, JavaFX & SWT 5
L Swing JLabel wird beim ändern der Schriftart immer neu gezeichnet. AWT, Swing, JavaFX & SWT 2
R Layout Manager null und Component wird nicht hinzugefügt AWT, Swing, JavaFX & SWT 3
Zrebna JavaFX-Projekt mit Bildern funktioniert nicht - um Hilfe wird gebeten AWT, Swing, JavaFX & SWT 14
kodela BufferStrategy wird nicht gefunden AWT, Swing, JavaFX & SWT 5
J JPanel wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
S ImageView wird dem Gridpane nicht zugefügt AWT, Swing, JavaFX & SWT 1
G Repaint wird nicht durchgeführt AWT, Swing, JavaFX & SWT 8
E Warum wird Text im JTextArea erst am Programmende angezeigt ? AWT, Swing, JavaFX & SWT 1
S Swing Panel wird nicht neu gezeichnet AWT, Swing, JavaFX & SWT 3
M Swing GUI wird nach invokeLater() langsam AWT, Swing, JavaFX & SWT 19
Bluedaishi TableView mit Combox wert wird nicht in die TableView gesetzt AWT, Swing, JavaFX & SWT 38
L JFrame wird zu klein erstellt AWT, Swing, JavaFX & SWT 7
T JavaFX Nach Zoomen wird an falscher Stelle gezeichnet AWT, Swing, JavaFX & SWT 0
kodela Swing Letzte Änderung in der Tabelle wird nicht gespeichert AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen


Oben