Swing Button wird abgeschnitten

  • Themenstarter Themenstarter kjehfiuwefiwewe
  • Beginndatum Beginndatum
K

kjehfiuwefiwewe

Gast
Ich möchte ein Button mit Text und Bild..

Dazu:
Java:
	JButton minimizeBttn = new JButton("Hallo", new ImageIcon("drawable/minimize.png"));
Dann natürlich mit panel.add(minimizeBttn) auf das Panel gelegt..

Allerdings wird, wenn ich das Programm starte, nur der Button mit
Ha... <- angezeigt!!! Das Bild ist nicht da und der Text wird verkleinert...

Der Bild ist 32x32 Pixel groß!

Wenn ich den text ghanz weg mache, wird auf dem Button garnichts angezeigt.
Wenn ich nur den text mache, wird der komplete text angezeigt..

Wo ist mein Fehler?! oO
 
Ich habe eine kleine Routine, die ich immer nehme um Bilder zu laden. Bei Deinem Code bin ich mir sicher, dass es Probleme gibt, wenn das Programm das Bild aus einer JAR-Datei laden möchte. Hier mal mein Beispiel, wobei hier noch die horizontale/vertikale Position des Textes angegeben wird.

Java:
	public static void main(String[] args) {
		JFrame frame = new JFrame("Test");
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		JPanel panel = new JPanel();
		ImageIcon imageIcon = createImageIcon("/drawable/minimize.png", "Hallo");
		JButton minimizeBttn = new JButton(imageIcon.getDescription(), imageIcon);
		minimizeBttn.setHorizontalTextPosition(SwingConstants.CENTER);
		minimizeBttn.setVerticalTextPosition(SwingConstants.BOTTOM);
		panel.add(minimizeBttn);
		frame.add(panel);
		frame.pack();
		frame.setVisible(true);
	}
	
	protected static ImageIcon createImageIcon(String path, String description) {
		URL imgURL = A.class.getResource(path);
		if (imgURL != null) {
			return new ImageIcon(imgURL, description);
		} else {
			System.err.println("Couldn't find file: " + path);
			return null;
		}
	}
 

Zurück
Oben