Sie sind nicht angemeldet.

58 901

11.05.2011, 13:54

ja lol dachtsch auch xD

58 902

11.05.2011, 17:18

verdammte scheisse nu muss au noch meine waschmaschine kaputt gehn -.- letzten monat die kupplung am auto dann der geschirrspüler. so ein rotz :cursing:

KayLovesU

I gonna love the fuk out of you.

Beiträge: 182

Wohnort: Stralsund

  • Nachricht senden

58 905

11.05.2011, 18:53

Viva La Revolution!
nope

58 907

11.05.2011, 19:01


wie ich nach dieser Tabelle einfach Körbchengröße F/G habe......
DAS is nich mehr lustig o.O

58 909

11.05.2011, 19:30

ja und was hast du für ne Körbchengröße

80G... O.O

-SJ-

If light cannot escape me, what hope have you?

Beiträge: 6 608

Wohnort: Black Hole

Beruf: Alles

  • Nachricht senden

58 910

11.05.2011, 19:31

wenn dodo über ihre möpse redet werd ich ganz wuschig


58 911

11.05.2011, 19:33

na gut zum rumspielen sind se echt praktisch und spaßig :D

58 913

11.05.2011, 19:37

davon kann ich nen Liechen singen... :denk:

DarthMaul

~ Schlummerbärchi ~

Beiträge: 1 195

Wohnort: Dresden

Beruf: richter

  • Nachricht senden

58 914

11.05.2011, 20:00

aaa? das habbsch ja noch nie gehört xD
na gut zum rumspielen sind se echt praktisch und spaßig :D
auf jeden:jaa:


Under the winter skies
We stand glorious!
And with Oden on our side
We are victorious!


Tuna

What the Factor?

Beiträge: 1 657

Wohnort: Düsseldorf

Beruf: Student (Mathe)

  • Nachricht senden

58 915

11.05.2011, 20:07

maytz, übersetz bitte mal:

Quellcode

1
2
3
4
5
6
7
8
9
Exception in thread "main" java.lang.NoClassDefFoundError: Hauptfenster
Caused by: java.lang.ClassNotFoundException: Hauptfenster
	at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: Hauptfenster. Program will exit.
Versteh ich nciht ganz, meine Klasse Hauptfenster hat nämlich ne main-Funktion...
q.e.d.

KayLovesU

I gonna love the fuk out of you.

Beiträge: 182

Wohnort: Stralsund

  • Nachricht senden

58 916

11.05.2011, 20:09

*sigh*
nope

58 917

11.05.2011, 20:12

Ich würde jetzt spontan darauf tippen, dass sich der Name deiner Klasse und der Dateiname unterscheiden, ansonsten wäre der Code hilfreich :D

Tuna

What the Factor?

Beiträge: 1 657

Wohnort: Düsseldorf

Beruf: Student (Mathe)

  • Nachricht senden

58 918

11.05.2011, 20:14

Hauptfenster.java:

Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;


public class Hauptfenster extends JFrame 
{
	private Zeichenfläche zeichenfläche;
	private JPanel Formwahl;
	
	private JRadioButton RBStrecke;
	private JRadioButton RBRechteck;
	private JRadioButton RBEllipse;
	
	enum Formen
	{
		Strecke, Rechteck, Ellipse;
	}
	
	Formen Form;
	
	public Formen getForm()
	{
		return Form;
	}
	
	// Konstruktor
	public Hauptfenster()
	{
		super("Formen zeichnen mit Swing");
		setResizable(false);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		
		Form = Formen.Strecke;
		
		Elemente_erzeugen();
		Funktionalitäten_hinzufügen();
		
		pack();
		setVisible(true);
	}
	
	private void Elemente_erzeugen()
	{
		zeichenfläche = new Zeichenfläche(this);
				
		Formwahl = new JPanel();
		RBStrecke = new JRadioButton("Strecke", true);
		
		RBRechteck = new JRadioButton("Rechteck");
		RBEllipse = new JRadioButton("Ellipse");
		
		Formwahl.add(RBStrecke);
		Formwahl.add(RBRechteck);
		Formwahl.add(RBEllipse);
		
		ButtonGroup bg = new ButtonGroup();
		bg.add(RBStrecke);
		bg.add(RBRechteck);
		bg.add(RBEllipse);
		
		setLayout(new BorderLayout());
		add(zeichenfläche, BorderLayout.SOUTH);
		add(Formwahl, BorderLayout.CENTER);
	}
	
	private void Funktionalitäten_hinzufügen()
	{
		RBStrecke.addActionListener(new ActionListener()
			{
				public void actionPerformed(ActionEvent ae)
				{
					Form = Formen.Strecke;
				}
			});
		
		RBRechteck.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent ae)
			{
				Form = Formen.Rechteck;
			}
		});
		
		RBEllipse.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent ae)
			{
				Form = Formen.Ellipse;
			}
		});
	}
	
	public static void main(String[] args)
	{
		new Hauptfenster();
	}
}


Zeichenfläche.java:

Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;


import javax.swing.JPanel;


public class Zeichenfläche extends JPanel
{	
	int p1x,p2x,p1y,p2y;
	boolean erster_punkt = false;
	LinkedList<Form> formenliste;

	public Zeichenfläche(final Hauptfenster parent) 
	{
		setBackground(Color.white);
		setPreferredSize(new Dimension(800,600));
		formenliste = new LinkedList<Form>();
		
		addMouseListener(new MouseAdapter()
		{
			public void mouseClicked(MouseEvent me)
			{
				if(!erster_punkt)
				{
					p1x = me.getX();
					p1y = me.getY();
					System.out.println("Klick: " + p1x + " " + p1y);
					erster_punkt = true;
				}
				else
				{
					p2x = me.getX();
					p2y = me.getY();
					
					Hauptfenster.Formen form = parent.getForm();
					switch(form)
					{
						case Strecke:
							Strecke strecke = new Strecke(p1x,p1y,p2x,p2y);
							formenliste.add(strecke);
						case Ellipse:
							Ellipse ellipse = new Ellipse(p1x,p1y,p2x,p2y);
							formenliste.add(ellipse);
						case Rechteck:
							Rechteck rechteck = new Rechteck(p1x,p1y,p2x,p2y);
							formenliste.add(rechteck);
					}
					erster_punkt = false;
				}
			}
			
		});
	}
	
	@Override public void paintComponent(Graphics g)
	{
		for (Iterator<Form> it = formenliste.iterator();it.hasNext();)
			it.next().zeichne(g);
	}
}


Die anderen Dateien (Form.java,Strecke.java, Ellipse.java und Rechteck.java) sind glaub ich irrelevant...
q.e.d.

58 919

11.05.2011, 20:20

Also an der main liegt's nicht, aber ich kanns jetzt auch nicht kompilieren.. Aber nur nebenbei, wie kann man nur Umlaute im Klassennamen hernehmen, ist ja grausam =D

wie kompilierst du denn? Und führst dann aus?


Edit: Läuft bei mir, also die GUI.. benütz doch einfach Eclipse? =D

Tuna

What the Factor?

Beiträge: 1 657

Wohnort: Düsseldorf

Beruf: Student (Mathe)

  • Nachricht senden

58 920

11.05.2011, 20:23

@Umlaute: Weil ichs kann :D

Dann erstmal der Vollständigkeit halber:
Form.java:

Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.awt.Graphics;


public abstract class Form 
{
	protected int p1_x;
	protected int p1_y;
	protected int p2_x;
	protected int p2_y;
	
	public Form(int x1,int y1,int x2,int y2)
	{
		p1_x = x1;
		p1_y = y1;
		p2_x = x2;
		p2_y = y2;
	}
	
	public abstract void zeichne(Graphics g);
}


Ellipse.java:

Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.awt.Graphics;


public class Ellipse extends Form {

	public Ellipse(int x1, int y1, int x2, int y2) 
	{
		super(x1, y1, x2, y2);
	}

	@Override public void zeichne(Graphics g) 
	{
		g.drawOval(p1_x, p1_y, p2_x-p1_x, p2_y-p1_y);
	}

}


Rechteck.java:

Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.awt.Graphics;


public class Rechteck extends Form 
{
	public Rechteck(int x1, int y1, int x2, int y2) 
	{
		super(x1, y1, x2, y2);
	}

	@Override public void zeichne(Graphics g) 
	{
		g.drawRect(p1_x,p1_y,p2_x-p1_x,p2_y-p1_y);
	}
}


Strecke.java:

Spoiler Spoiler

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.awt.Graphics;

public class Strecke extends Form 
{
	public Strecke(int x1,int y1,int x2,int y2) 
	{
		super(x1,y1,x2,y2);
	}

	@Override public void zeichne(Graphics g) 
	{
		g.drawLine(p1_x, p1_y, p2_x, p2_y);
	}
}



Naja, und @kompillieren...ganz normal "Run" bei Eclipse anklicken....hat vorher auch immer geklappt o.O
q.e.d.