Java - drawline

moep.at

Urgestein
Thread Starter
Mitglied seit
07.03.2006
Beiträge
2.033
Ort
Österreich
Hi,
ich versuche jetzt schon längere zeit vergebens, eine Linie in mein JFrame zu zeichnen.... :fire:

Mein Code sieht wie folgt aus:
Code:
import javax.swing.JFrame;

public class Main
{
	public static void main(String args[])
	{
		String filename = "C:/Temp/shapes.txt";
		
		//call read file class
		new ReadFile(filename);
		
		//create and call window
		JFrame window = new MainWindow();
		
		//set the window visible
		window.setVisible(true);
		//set focus to the window
		window.requestFocus();
		window.repaint();
	}
}
Code:
import java.awt.*;
import javax.swing.JFrame;


@SuppressWarnings("serial") //ignore warning
public class MainWindow extends JFrame
{
	public MainWindow()
	{
		//create the main-window
		super("Shapes");	//Window Name
		setSize(400, 400);
		
		//bg color
		Container con = getContentPane();
		con.setBackground(Color.WHITE); 

		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		//remove borders?
		setUndecorated(false);
		
		//center window
		Dimension dim = getToolkit().getScreenSize();
		setLocation((dim.width - getWidth()) / 2,
					(dim.height - getHeight()) / 2);
		
//		//icon adden
//		java.net.URL iconUrl = this.getClass().getResource("images/icon.gif");
//		Image img = getToolkit().getImage(iconUrl); 
//		MediaTracker mt = new MediaTracker(this);
//		mt.addImage(img, 0);    
//		setIconImage(img);		
	}
}
Code:
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;

@SuppressWarnings("serial") //ignore warning
public class Paint extends JFrame
{
	public void paint(Graphics g)
	{
		g.setColor(Color.red);
		g.drawLine(0,0,200,200);
	}
}
und ich möchte ein stink normales draw line hinbekommen, aba iwie klappts einfach nicht :(

kann mir bitte jemand weiter helfen? ich verzweifle grad wirklich :(

mfg
moep.at
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Hallo moep.at,

ist bei mir zwar schon ein bisschen her, das ich mit paint in Java mal was gemacht habe, aber dre fehler liegt in Deiner letzten Klasse Paint.

Wenn Du die Funktion paint aus der Klasse Paint in dieKlasse MainWindow verschiebst, sollte es klappen.
 
Hey,

DANKE DANKE DANKE!!!

so gehts mal :=)
aber vlt eine dumme frage, aber was spricht dagegen es in eine eigene Klasse zu packen? iwie fänd ich es "schöner" :)

auf was ich hinaus will ist nämlich:
-file auslesen, welches wie folg aufgebaut ist (Line;BLUE;10;10;20;20 auch mehrere lines mit verschiedenen formen)
-je nachdem welche form gefragt ist das richtige zeichnen

BR
moep.at
 
Du erzeugst ja Deine eigene Unterklasse von JFrame, Deine Klasse MainWindow.

Wenn Du jetzt window.repaint() aufrufst, wird in der Klasse MainWindow nach der paint Methode gesucht und, falls diese gefunden wird, ausgeführt. Wenn Sie nicht gefunden wirdm, wird die paint Methode der Überklasse ausgeführt, also von JFrame. Und da da Dein Code nciht drinsteht, wird auch ncihts gezeichnet.

D.h. Du musst die Paint Methode in deiner Klasse MainWindow implementieren, damit die Methode der Klasse JFrame überschrieben wird.
 
okay, danke

langsam wirds ja sogar mit dem verständnis :)

bin schon gespannt wie ich jetzt mit den abstrakten klassen der figuren zu recht komme :)

aber vielen dank, muss anscheinend noch SEHRSEHR viel lesen und probieren :)
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh