JPanel wird nicht gezeichnet

kurm_de

Mitglied
Hallo zusammen,


ich habe ein kleines Problem mit dem laden eines Bildes und einem Button in meinem Applet.

Mit unten stehenden Code wird das Bild und ein TextField und ein Button geladen, aber wenn ich das Applet starte erscheint erstmal nur das Textfeld.

Das Bild und der Button werden erst angezeigt, wenn:
- ich den Browser minimiere und dann wieder maximiere.
- ich über den nicht sichbaren Button gehe und klicke.
- ich mitten in das nicht sichtbare Bild klicke.



Ich hoffe Ihr könnt mir helfen das Problem zu verstehen und zu lösen.
Vieleicht habe ich nur was in dem Code vergessen.
Oder liegt es an dem Browser(iExplorer 8) ?




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


public class swmaps extends JApplet implements ActionListener, MouseListener {

	int x;
	int y;
	String z;
	

	JTextField feld;
	JButton button;


	public void init(){
	
		
		JPanel p = new JPanel();

		button = new JButton("finde...");
		button.addActionListener(this);

		feld = new JTextField(5);
		JLabel label = new JLabel();
		label.setText("Gebäude Nr.");

		
	
		karte k = new karte();
		k.addMouseListener(this);

		p.add(label);
		p.add(feld);
		p.add(button);


		add(BorderLayout.CENTER,k);
		add(BorderLayout.NORTH,p);
		
		repaint();
		

	}



	public void actionPerformed(ActionEvent event){
		z=feld.getText();
		System.out.println(z+"#");
		
		if(z.equals("165")){
			System.out.println(z+"=");		
			x=344;
			y=224;
		}else{
			x=0;
			y=0;
		}

		
		repaint();
	}



	public void mouseClicked(MouseEvent e) {
      		x=e.getX();
		y=e.getY();
		z=x+" / "+y;
		repaint();
	}
	public void mouseExited(MouseEvent e) {}
	public void mouseEntered(MouseEvent e) {}
	public void mouseReleased(MouseEvent e) {}
	public void mousePressed(MouseEvent e) {}





	class karte extends JPanel{

		public void paintComponent(Graphics g){
		
			URL imgURL = getClass().getResource("SU1000448.png");
			Image image = new ImageIcon(imgURL).getImage();
			g.drawImage(image,0,0,this);
			

			imgURL = getClass().getResource("inadel.png");
			Image Inadel = new ImageIcon(imgURL).getImage();

			g.drawString(z,x,y);

			if(x!=0){
				g.drawImage(Inadel,x,y,this);	
			}
			
			

		}

		
	}

}



viele Grüße
kurm_de
 

Anhänge

  • 01.jpg
    01.jpg
    58,6 KB · Aufrufe: 34
  • 02.jpg
    02.jpg
    106,5 KB · Aufrufe: 25

Melfis

Aktives Mitglied
Im Aktuellen Code lädst du bei jedem paintComponent() das Image neu.
In die Paint-Methoden gehört nur der Zeichenprozess an sich!

Java:
class karte extends JPanel{

Image image;
Image Inadel;

       public karte(){
            URL imgURL = getClass().getResource("SU1000448.png");
            image = new ImageIcon(imgURL).getImage();
            imgURL = getClass().getResource("inadel.png");            
            Inadel = new ImageIcon(imgURL).getImage();
        }

        public void paintComponent(Graphics g){
 
            g.drawImage(image,0,0,this);
            g.drawString(z,x,y);
 
            if(x!=0){
                g.drawImage(Inadel,x,y,this);   
            }          
        }    
    }

PS.: Namenskonventionen sind was feines ;)
 

kurm_de

Mitglied
danke,

mir war das noch nicht ganz klar mit den Paint-Methoden und dem Zeichenprozess.

Ich habe das jetzt geändert.

Nun habe ich das Applet zu Hause mit FireFox laufen lassen, aber das Problem besteht immer noch :(



Viele Grüße

kurm_de
 

schulli

Mitglied
Hi,

dein String z ist im ersten Aufruf null. Das gibt ne NullPointerException.

Fix:
Java:
 String z = "";
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O Swing "Eigenes" JPanel wird dem JScrollPane nicht hinzugefügt AWT, Swing, JavaFX & SWT 5
J JPanel wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
DaCrazyJavaExpert Swing JPanel "ContentPane" wird nicht gesetzt/angezeigt AWT, Swing, JavaFX & SWT 16
DaCrazyJavaExpert Swing Größe des JPanel ändern/wird nicht geändert. AWT, Swing, JavaFX & SWT 3
DaCrazyJavaExpert Swing JPanel wird in JScollPane nicht angezeigt AWT, Swing, JavaFX & SWT 2
L ImageIcon auf JPanel wird nicht angezeigt(keiner Fehlermeldung) AWT, Swing, JavaFX & SWT 11
T JTextField Array im JPanel wird nicht komplett angezeigt AWT, Swing, JavaFX & SWT 7
C Image laden und Speichern - Image wird auf JPanel nicht angezeigt AWT, Swing, JavaFX & SWT 4
R JPanel paintComponents() wird nicht aufgerufen AWT, Swing, JavaFX & SWT 5
A JPanel wird nach Buttonklick nicht angezeigt AWT, Swing, JavaFX & SWT 2
J 2D-Grafik JPanel wird nicht angezeigt AWT, Swing, JavaFX & SWT 0
S Geladenes Bild wird nicht in JPanel angezeigt AWT, Swing, JavaFX & SWT 7
S Swing JLabel wird in JPanel nicht sichtbar AWT, Swing, JavaFX & SWT 2
R Instanz einer Subklsse von JPanel wird nicht angezeigt. AWT, Swing, JavaFX & SWT 15
H Swing paint() von JPanel wird nicht aufgerufen AWT, Swing, JavaFX & SWT 10
Ä Graphics-Komponente auf JPanel wird nicht angezeigt AWT, Swing, JavaFX & SWT 4
V Bild wird nicht auf JPanel gezeichnet; Java Problem AWT, Swing, JavaFX & SWT 10
T grafik in jpanel wird nicht neugezeichnet AWT, Swing, JavaFX & SWT 7
G Nur ein JPanel wird angezeigt AWT, Swing, JavaFX & SWT 9
thobren Swing Im JPanel wird nur TextArea gelöscht AWT, Swing, JavaFX & SWT 13
J 2D-Grafik JPanel wird erst 1-2sek nach start des JFrames angezeigt AWT, Swing, JavaFX & SWT 3
H Swing JPanel Inhalt wird bei verwenden von JPopup gelöscht AWT, Swing, JavaFX & SWT 5
R JPanel wird erst neu gezeichnet nach erneuter auswahl AWT, Swing, JavaFX & SWT 8
N Swing JPanel wird überschrieben AWT, Swing, JavaFX & SWT 2
W JMenu wird vom JPanel ständig überzeichnet... Abhilfe? AWT, Swing, JavaFX & SWT 3
Z JPanel wird erst durch aufziehen des Fensters sichtbar AWT, Swing, JavaFX & SWT 3
E Problem mit JPanel - Wann wird size berechnet? AWT, Swing, JavaFX & SWT 5
P Zwei JPanel übereianderlegen AWT, Swing, JavaFX & SWT 14
XWing Basic JPanel mit 2 Buttons beutzen. AWT, Swing, JavaFX & SWT 10
G JPanel per Drag and Drop JButtons und Bilder ablegen AWT, Swing, JavaFX & SWT 1
G JPanel mit JButtons und Bilder AWT, Swing, JavaFX & SWT 5
N AWT JPanel zu Jframe hinzufügen AWT, Swing, JavaFX & SWT 2
M clear JPanel before repainting AWT, Swing, JavaFX & SWT 1
B ImageIcon auf JPanel austauschen AWT, Swing, JavaFX & SWT 3
T Swing Reload JPanel + darin liegende ProgressBar AWT, Swing, JavaFX & SWT 9
P Swing Mehrere JLabels mit ImageIcon in JPanel lesen AWT, Swing, JavaFX & SWT 1
E JScrollPane mit JPanel verbinden AWT, Swing, JavaFX & SWT 1
F JPanel Celleditor AWT, Swing, JavaFX & SWT 8
B JPanel-Inhalte inkl. JTextarea zoomen? AWT, Swing, JavaFX & SWT 3
B Mit ContentPane werden Komponenten angezeigt, mit SplitPane, JPanel nicht? AWT, Swing, JavaFX & SWT 6
CptK Funktionsgraphen effizient zeichnen und nur Teile von JPanel erneuern AWT, Swing, JavaFX & SWT 2
P Button simpler random auf einem JPanel verteilen? AWT, Swing, JavaFX & SWT 3
Ich lerne Java. Swing Von JPanel A auf JPanel B zugreifen. AWT, Swing, JavaFX & SWT 4
A JPanel austauschen und Focus geben AWT, Swing, JavaFX & SWT 3
E Auf JPanel malen und davor JComponenten anzeigen AWT, Swing, JavaFX & SWT 12
L JComponent aus JPanel anhand Mausposition ermitteln AWT, Swing, JavaFX & SWT 10
B Verschiebbares JPanel "ruckelt" im Randbereich AWT, Swing, JavaFX & SWT 2
S Swing JPanel nimmt keinen KeyListener an AWT, Swing, JavaFX & SWT 7
K JLabel mit Bilder im nicht initialisierten JPanel hinzufügen AWT, Swing, JavaFX & SWT 5
Hatsi09 Swing JPanel Bild einfügen AWT, Swing, JavaFX & SWT 14
L JPanel zeigt keinen Inhalt AWT, Swing, JavaFX & SWT 1
dereki2000 JPanel mit Rückgbe wie bei JOptionPane AWT, Swing, JavaFX & SWT 3
E Hintergrundfarbe setzen in JPanel funktioneirt nicht AWT, Swing, JavaFX & SWT 4
P JPanel KeyListener hinzufügen AWT, Swing, JavaFX & SWT 8
S Nach scrollen verschwindet das zuvor im JPanel gezeichnete AWT, Swing, JavaFX & SWT 2
P Bewegung eines Balkens in eineum JPanel welches als Spielfeld fungiert AWT, Swing, JavaFX & SWT 2
L Swing JPanel Größe anpassen AWT, Swing, JavaFX & SWT 6
D Platzierung von JTextfield in JPanel AWT, Swing, JavaFX & SWT 3
D Swing Anwendung ohne JPanel erstellen AWT, Swing, JavaFX & SWT 1
M Swing JPanel in JScrollPane AWT, Swing, JavaFX & SWT 3
M Zwei JPanel übereinander nur vorderes "repainten" AWT, Swing, JavaFX & SWT 3
J 2D-Grafik Background einer Jpanel Klasse ändern AWT, Swing, JavaFX & SWT 1
J Ziehen eines Buttons im JPanel AWT, Swing, JavaFX & SWT 2
J Button lässt sich nicht auf dem JPanel verschieben AWT, Swing, JavaFX & SWT 5
D zwei JLabel stapeln in einem JPanel AWT, Swing, JavaFX & SWT 5
it_is_all JPanel verschwindet nach Button-Klick AWT, Swing, JavaFX & SWT 2
B Bar Plot in Swing JPanel AWT, Swing, JavaFX & SWT 0
F Screenshot eines JPanel AWT, Swing, JavaFX & SWT 3
S JPanel rotieren, Bild ist abgeschnitten, Clipping? AWT, Swing, JavaFX & SWT 0
M Swing JPanel flüssig verschieben AWT, Swing, JavaFX & SWT 5
kilopack15 JPanel im laufenden Zustand einfärben AWT, Swing, JavaFX & SWT 2
kilopack15 JPanel Farbverwaltung AWT, Swing, JavaFX & SWT 1
A JScrollPane soll JPanel mit JButtons enthalten und eine Scollbar anzeigen AWT, Swing, JavaFX & SWT 1
A Swing JLabels in einer ForEach Schleife an den JPanel anheften (UNO Netzwerkspiel) AWT, Swing, JavaFX & SWT 1
L JPanel zeichnet im Konstrukter erzeugten Hintergrund nicht AWT, Swing, JavaFX & SWT 10
Java_RY wie kann ich auf JButtons in einem JPanel zugreifen AWT, Swing, JavaFX & SWT 3
F Zeichnung einem JPanel im Layoutmanager zuweisen AWT, Swing, JavaFX & SWT 3
Meeresgott Swing Umgang mit JPanel AWT, Swing, JavaFX & SWT 4
R 2D-Grafik PNG Bild per Graphics auf JPanel AWT, Swing, JavaFX & SWT 9
K JPanel Bilder bei Windows nicht darstellbar AWT, Swing, JavaFX & SWT 6
W Swing JPanel nur einmal nach mehreren Änderungen neu zeichnen AWT, Swing, JavaFX & SWT 1
J Swing Zeichenfläche im JPanel des Haupfenster anzeigen lassen AWT, Swing, JavaFX & SWT 4
A Swing JPanel zeigt Buttons nicht an AWT, Swing, JavaFX & SWT 4
R JPanel überzeichnet alles? AWT, Swing, JavaFX & SWT 1
D Von JPanel auf anderes JPanel zugreifen AWT, Swing, JavaFX & SWT 9
L Swing Teile eines JPanel in eigene Klasse auslagern AWT, Swing, JavaFX & SWT 3
I JPanel - Verwaltung/ Anordnung AWT, Swing, JavaFX & SWT 4
T JComponents zur Laufzeit auf JPanel darstellen AWT, Swing, JavaFX & SWT 10
F Java Swing Rechteck in JPanel zeichnen AWT, Swing, JavaFX & SWT 7
J Linien auf JPanel zeichnen AWT, Swing, JavaFX & SWT 3
M Swing JPanel innerhalb eines Frames verschieben AWT, Swing, JavaFX & SWT 3
K Swing JPanel ueber komplette Form legen AWT, Swing, JavaFX & SWT 1
W Swing Größenänderung vom JPanel im JScrollPane und anschließendes positionieren AWT, Swing, JavaFX & SWT 2
R Komponenten von JPanel bleiben unsichtbar AWT, Swing, JavaFX & SWT 2
O JTabeddpane aber jedes JPanel als eigene Klasse anlegen AWT, Swing, JavaFX & SWT 7
llabusch Linien in JPanel zeichnen AWT, Swing, JavaFX & SWT 6
I (JPanel) paintComponent mit Zeitverschiebung (Sleep/Wait) AWT, Swing, JavaFX & SWT 1
H Netbeans Designer: Probleme mit JPanel und JFrame AWT, Swing, JavaFX & SWT 2
S jpanel anchor bottom AWT, Swing, JavaFX & SWT 1
A JPanel größe verändern AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen


Oben