Probleme mit Grafikfehlern

Status
Nicht offen für weitere Antworten.

lokiht

Aktives Mitglied
Hallo,
ich habe ein JPanel, welches teiltransparent ist. Dazu benutze ich eine Farbe mit einem Alpha-Wert von 150.

Wenn ich nun über einen Button gehe, entstehen hässliche Fehler. Woran kann das liegen?

Die Buttons sind bei mir JLabels, welche ein Bild enthalten um mouseOver-Effekte zu simulieren. Ich hoffe ihr könnt mir helfen. Mir fällt nichts mehr ein :(

Hier der Code:

Code:
package Components;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.Border;

import Data.Colors;
import Data.GameViewData;

public class GameMenu extends JPanel {

	private JLabel menuTop;

	private JPanel menuCenter;

	private GameViewData data;

	private Colors colors = new Colors();

	private JLabel save_button;

	private JLabel properties_button;

	private JLabel lobby_button;

	private JLabel quit_button;

	private JLabel back_button;

	public GameMenu(GameViewData data) {

		this.data = data;

		this.setLayout(new BorderLayout());
		this.setOpaque(false);
		this.setBounds(400, 200, (int) data.getPercentToPix(25), 300);

		this.setBorder(BorderFactory.createBevelBorder(0, Color.GRAY,
				Color.DARK_GRAY));

		this.setMenuTop(new JLabel());
		this.getMenuTop()
				.setIcon(new ImageIcon("images/gameMenu/menuHead.png"));

		// die Buttons erzeugen
		this.setSave_button(new JLabel(
				new ImageIcon("images/gameMenu/save.png")));
		this.setProperties_button(new JLabel(new ImageIcon(
				"images/gameMenu/einstellungen.png")));
		this.setLobby_button(new JLabel(new ImageIcon(
				"images/gameMenu/lobby.png")));
		this.setQuit_button(new JLabel(
				new ImageIcon("images/gameMenu/quit.png")));
		this.setBack_button(new JLabel(new ImageIcon(
				"images/gameMenu/backToGame.png")));

		// Ende Buttons erzeugen

		this.setMenuCenter(new JPanel());
		this.getMenuCenter().setLayout(new GridLayout(5, 1));

		// Buttons auf das GameMenu adden
		this.getMenuCenter().add(getBack_button());
		this.getMenuCenter().add(getSave_button());
		this.getMenuCenter().add(getProperties_button());
		this.getMenuCenter().add(getLobby_button());
		this.getMenuCenter().add(getQuit_button());

		// Ende Buttons adden

		this.getMenuCenter().setBackground(colors.getTransparentMainColor(150));

		this.add(getMenuTop(), BorderLayout.NORTH);
		this.add(getMenuCenter(), BorderLayout.CENTER);

	}

	public JLabel getProperties_button() {
		return properties_button;
	}

	public void setProperties_button(JLabel properties_button) {
		this.properties_button = properties_button;
	}

	public JPanel getMenuCenter() {
		return menuCenter;
	}

	public void setMenuCenter(JPanel menuCenter) {
		this.menuCenter = menuCenter;
	}

	public JLabel getMenuTop() {
		return menuTop;
	}

	public void setMenuTop(JLabel menuTop) {
		this.menuTop = menuTop;
	}

	public JLabel getSave_button() {
		return save_button;
	}

	public void setSave_button(JLabel save_button) {
		this.save_button = save_button;
	}

	public JLabel getLobby_button() {
		return lobby_button;
	}

	public void setLobby_button(JLabel lobby_button) {
		this.lobby_button = lobby_button;
	}

	public JLabel getQuit_button() {
		return quit_button;
	}

	public void setQuit_button(JLabel quit_button) {
		this.quit_button = quit_button;
		setQuitListener();

	}

	public void setQuitListener() {
		getQuit_button().addMouseListener(new MouseListener() {

			public void mouseClicked(MouseEvent e) {
				getQuit_button().setIcon(
						new ImageIcon("images/gameMenu/quit2.png"));

				System.exit(0);

			}

			public void mouseEntered(MouseEvent e) {
				setCursor(new Cursor(Cursor.HAND_CURSOR));
				getQuit_button().setIcon(
						new ImageIcon("images/gameMenu/quit2.png"));
			}

			public void mouseExited(MouseEvent e) {
				getQuit_button().setIcon(
						new ImageIcon("images/gameMenu/quit.png"));
				setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
			}

			public void mousePressed(MouseEvent e) {
				getQuit_button().setIcon(
						new ImageIcon("images/gameMenu/quit2.png"));

			}

			public void mouseReleased(MouseEvent e) {
				getQuit_button().setIcon(
						new ImageIcon("images/gameMenu/quit2.png"));

			}

		});
	}

	public JLabel getBack_button() {
		return back_button;
	}

	public void setBack_button(JLabel back_button) {
		this.back_button = back_button;
		setBackToGameListeners();

	}

	public void setBackToGameListeners() {
		this.getBack_button().addMouseListener(new MouseListener() {

			public void mouseClicked(MouseEvent e) {

				getBack_button().setIcon(
						new ImageIcon("images/gameMenu/backToGame2.png"));
				setVisible(false);

			}

			public void mouseEntered(MouseEvent e) {
				getBack_button().setIcon(
						new ImageIcon("images/gameMenu/backToGame2.png"));
				setCursor(new Cursor(Cursor.HAND_CURSOR));

			}

			public void mouseExited(MouseEvent e) {
				getBack_button().setIcon(
						new ImageIcon("images/gameMenu/backToGame.png"));
				setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
			}

			public void mousePressed(MouseEvent e) {
				getBack_button().setIcon(
						new ImageIcon("images/gameMenu/backToGame2.png"));

			}

			public void mouseReleased(MouseEvent e) {
				getBack_button().setIcon(
						new ImageIcon("images/gameMenu/backToGame2.png"));

			}

		});
	}
}
 

lokiht

Aktives Mitglied
Vielen Dank für die Antwort. Dieser Artikel ist mir bekannt. Mein Problem ist, dass ich für meine Anwendung nicht wirklich eine Alternative sehe. Ich habe ja im Grunde AWT-Events mit Swing-Komponenten gemischt. Das ist nun behoben aber die Grafikfehler sind immer noch da. Was mache ich noch falsch. Andere AWT-Komponenten habe ich weiter nicht bemerkt. Was ist das java.awt.mouseEvent - Äquivalent für Swing?
 

lokiht

Aktives Mitglied
Hat neimand mehr eine Idee? Liegt es vielleicht an anderen Komponenten innerhalb meiner Anwendung. Ich habe ein JWindow, davon die paintComponent() überschrieben und darauf liegt oben erwähnte Klasse. Alle Listener sind jetzt Swing und heavyWeight-Components verwende ich nach meinem Wissen auch nicht. Oder habe ich etwas übersehen?
 

L-ectron-X

Gesperrter Benutzer
Aha, du hast den Code inzwischen geändert... (wenn ich jetzt nicht zwei Threads miteinander verwechsle)
Du hattest anfangs noch AWT-Komponenten drin.

Egal. Die Mischung, die vermieden werden sollte bezieht sich nur auf die Komponenten einer GUI. Events haben damit nichts zu tun.
Kannst du mal eine Hardcopy von deinem Problem zeigen?
 

lokiht

Aktives Mitglied
Hmm. Falls AWT-Komponenten drin waren sind sie das immer noch. Lediglich die Listener sind nun auch SWING. Nur welche AWT=Komponenten sind hier enthalten? Theoretisch muessten diese ja auch in den Imports auftauchen aber ich kann sie beim besten Willen nicht entdecken. Hardcopy kommt sogleich...
 

lokiht

Aktives Mitglied
So, ging leider nicht früher. Hatte viel zu tun. Ich hoffe wirklich, dasss wir da eine Lösung finden, weil mir derartige Probleme mitlerweile schon sehr oft begegnet sind, nur das ich diesmal keine Wahlmöglichkeiten habe.

Hier der Fehler:



fehler.jpg
 

lokiht

Aktives Mitglied
Fällt niemandem mehr etwas dazu ein? Würde mich sooo sehr freuen, wenn jmd eine Lösung oder vielleicht einen Ansatz hätte
 

Wildcard

Top Contributor
Sorry für die blöde Frage, aber das ist ja nunmal nicht gerade ein Standard Look-and-Feel. Was ist Grafikfehler und was ist beabsichtigt? :bahnhof:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Eclipse RCP (e4) Anwendung mit JavaFX / e(fx)clipse - Upgrade Probleme AWT, Swing, JavaFX & SWT 2
Juelin Probleme bei Stage.close() AWT, Swing, JavaFX & SWT 23
XWing Swing Image anzeigen und probleme mit klassen AWT, Swing, JavaFX & SWT 3
E repaint Probleme AWT, Swing, JavaFX & SWT 13
mananana Mögliche probleme die in einer GUI passieren Können AWT, Swing, JavaFX & SWT 6
S GridBagLayout - Probleme mit Bilderanzeige AWT, Swing, JavaFX & SWT 3
I Probleme beim Drucken auf einen PDF-Drucker AWT, Swing, JavaFX & SWT 8
J Probleme mit idividueller Tablecell AWT, Swing, JavaFX & SWT 0
D JavaFX Probleme beim nachtäglichen hinzufügen der jfx dependency AWT, Swing, JavaFX & SWT 7
J Probleme mit InputDialog AWT, Swing, JavaFX & SWT 4
D JavaFX TextArea Probleme bei langen Zeilen AWT, Swing, JavaFX & SWT 1
G JavaFX SplitPane Anwendung - Controller Probleme AWT, Swing, JavaFX & SWT 5
K Probleme bei der Erstellung und Ausführung einer Jar Datei AWT, Swing, JavaFX & SWT 2
B Probleme Action Listener Taschenrechner AWT, Swing, JavaFX & SWT 27
pph080560 JavaFX Probleme mit FX AWT, Swing, JavaFX & SWT 3
M Probleme mit OpenJDK AWT, Swing, JavaFX & SWT 6
B 2D-Grafik paintcomponent Probleme beim zeichnen AWT, Swing, JavaFX & SWT 10
B Swing Probleme mit dem Layout AWT, Swing, JavaFX & SWT 1
L JavaFX Probleme beim Installieren JavaFX11 / JavaFX12 -- Eclipse 2019-03 AWT, Swing, JavaFX & SWT 3
Fiedlerdan Image-Pfad Probleme nach Export aus Eclipse AWT, Swing, JavaFX & SWT 31
H JFreeChart - DemoDataSetFactory Probleme AWT, Swing, JavaFX & SWT 1
H LayoutManager Probleme mit Positionierung/Abständen der Komponenten AWT, Swing, JavaFX & SWT 14
A Probleme mit gridheight (GridBagLayout) AWT, Swing, JavaFX & SWT 6
U Opaque Probleme AWT, Swing, JavaFX & SWT 3
H JavaFX Probleme Beim Wechseln der scene als .fxml AWT, Swing, JavaFX & SWT 7
F JavaFX Probleme beim automatischen Konvertieren AWT, Swing, JavaFX & SWT 4
S Probleme mit JComboboxen(?) AWT, Swing, JavaFX & SWT 18
S Swing Probleme mit MigLayout AWT, Swing, JavaFX & SWT 2
C Probleme mit createImage AWT, Swing, JavaFX & SWT 1
J Probleme mit contex Menu (javafx) AWT, Swing, JavaFX & SWT 1
J Probleme bei GameofLife AWT, Swing, JavaFX & SWT 24
S JavaFx - Button ActionEvent Probleme AWT, Swing, JavaFX & SWT 3
T Swing Probleme mit repaint() bzw. JScrollPane AWT, Swing, JavaFX & SWT 7
ImperatorMing JavaFX Probleme mit WindowEvent AWT, Swing, JavaFX & SWT 0
ImperatorMing JavaFX Probleme mit WindowEvent AWT, Swing, JavaFX & SWT 5
J LayoutManager GridBagLayout, probleme mit Anordnung von Objekten AWT, Swing, JavaFX & SWT 6
T Java FX Probleme beim befüllen eines Tableviews AWT, Swing, JavaFX & SWT 5
S AWT Probleme beim Zeichnen AWT, Swing, JavaFX & SWT 3
A Swing Probleme mit dem adden von JButtons zur JScrollPane AWT, Swing, JavaFX & SWT 2
D Swing Probleme mit dem Resizing AWT, Swing, JavaFX & SWT 7
G Probleme mit TextArea AWT, Swing, JavaFX & SWT 5
G JFrame Probleme AWT, Swing, JavaFX & SWT 2
K Probleme beim JPasswordField AWT, Swing, JavaFX & SWT 11
G Cardlayout Refresh Probleme AWT, Swing, JavaFX & SWT 2
J Swing Probleme mit ListSelectionListener(), Inhalte der JList werden gelöscht? AWT, Swing, JavaFX & SWT 6
D JavaFX Probleme bei Service-Klasse beim ändern der GUI AWT, Swing, JavaFX & SWT 8
K Probleme beim zeichnen mit paintComponent() AWT, Swing, JavaFX & SWT 1
M JButton Probleme AWT, Swing, JavaFX & SWT 14
L Probleme mit Programm AWT, Swing, JavaFX & SWT 13
blazingblade komischerweise probleme mit jtextfield.gettext() AWT, Swing, JavaFX & SWT 9
Xanny 2D-Grafik Beginner! Probleme mit Swing, Gprahics class und paint AWT, Swing, JavaFX & SWT 13
Sin137 LayoutManager GridBagLayout Probleme AWT, Swing, JavaFX & SWT 6
H Netbeans Designer: Probleme mit JPanel und JFrame AWT, Swing, JavaFX & SWT 2
M Swing Probleme mit Frame.pack() AWT, Swing, JavaFX & SWT 1
C Java FX Probleme beim Schließen einer Stage AWT, Swing, JavaFX & SWT 11
M Swing JProgressbar und Outoputstream probleme AWT, Swing, JavaFX & SWT 2
S Swing Probleme mit transparenz der Hintergrundfarbe und JRadioButtons AWT, Swing, JavaFX & SWT 2
Z Probleme mit JPanel's AWT, Swing, JavaFX & SWT 6
T Probleme mit Anzeige von Elementen im JPanel AWT, Swing, JavaFX & SWT 1
Shams Probleme bei dem Hinzufügen von Komponenten zu einem JFrame AWT, Swing, JavaFX & SWT 3
A Swing Probleme mit JScrollPane AWT, Swing, JavaFX & SWT 6
M Layout-Probleme unter Swing AWT, Swing, JavaFX & SWT 5
H Swing Probleme beim erstellen eines neuen Objektes durch einen Button AWT, Swing, JavaFX & SWT 10
J JavaFX JavaFX Probleme bei der Anzeige von Text AWT, Swing, JavaFX & SWT 18
A Probleme mit TilledBorder("***") AWT, Swing, JavaFX & SWT 4
F Bildschirmschoner Probleme mit Preview AWT, Swing, JavaFX & SWT 8
X Panel Probleme (Tetris) AWT, Swing, JavaFX & SWT 8
N JTable probleme AWT, Swing, JavaFX & SWT 5
B Probleme bei ImageIO.read (?!) AWT, Swing, JavaFX & SWT 9
P JFrame Location-/Size-Probleme AWT, Swing, JavaFX & SWT 5
U LayoutManager Probleme mit Layouts AWT, Swing, JavaFX & SWT 5
C 3 kleine Probleme... AWT, Swing, JavaFX & SWT 13
L NullpointerException und Probleme mit repaint() AWT, Swing, JavaFX & SWT 11
A Probleme mit 2 JFrames in einem Programm AWT, Swing, JavaFX & SWT 7
K LayoutManager Probleme mit 2 Komponenten AWT, Swing, JavaFX & SWT 9
C Probleme mit Buttons und einem ActionListener AWT, Swing, JavaFX & SWT 2
M Probleme mit Verkleinern eines GUI AWT, Swing, JavaFX & SWT 7
B Swing label.setText() macht probleme AWT, Swing, JavaFX & SWT 5
B ImageIcon - Probleme mit dem Dateipfad AWT, Swing, JavaFX & SWT 5
H JTree Probleme AWT, Swing, JavaFX & SWT 9
F Probleme mit (Graphics g) II AWT, Swing, JavaFX & SWT 4
F Probleme mit (Graphics g) AWT, Swing, JavaFX & SWT 3
K 2D-Grafik .GIF macht mir Probleme AWT, Swing, JavaFX & SWT 14
B Probleme bei Sortierung einer Tabelle mit DefaultTableModel AWT, Swing, JavaFX & SWT 6
T JTable Graphik probleme AWT, Swing, JavaFX & SWT 3
H GridBagLayout macht Probleme... AWT, Swing, JavaFX & SWT 4
vandread Swing Probleme mit jTextField im zusammenspiel mit einem Einblendeffekt (inkl. KSKB) AWT, Swing, JavaFX & SWT 6
S Swing Lauftext Performance Probleme, in größerer Anwendung AWT, Swing, JavaFX & SWT 6
B Infolabel Probleme mit Paint() ? AWT, Swing, JavaFX & SWT 8
P Probleme mit setIconImage AWT, Swing, JavaFX & SWT 8
U Swing Probleme mit Asynchronen Prozessen und Swing: AWT, Swing, JavaFX & SWT 3
das-mo Probleme mit GridBagLayout AWT, Swing, JavaFX & SWT 6
N 2D-Grafik 2 Probleme beim zeichnen AWT, Swing, JavaFX & SWT 18
L Probleme mit JPanel AWT, Swing, JavaFX & SWT 8
D Probleme bei Übertrag von ArrayList in Jtable AWT, Swing, JavaFX & SWT 2
G kleinere Probleme mit GUI AWT, Swing, JavaFX & SWT 2
G Mehrere Probleme mit Java's GUI AWT, Swing, JavaFX & SWT 6
M Swing Erste Schritte mit der GUI, viele Probleme AWT, Swing, JavaFX & SWT 36
J GUI-Aktualisierungs-Probleme AWT, Swing, JavaFX & SWT 4
B Performance-Probleme AWT, Swing, JavaFX & SWT 17

Ähnliche Java Themen

Neue Themen


Oben