Ich muss einen Java Aufzug erstellen mit 2 Buttons auf und ab.... die sind ja mal kein problem.
Aber da er ja fahren soll muss ich ihm eine Rechnung rechnen lassen... und das kombiniert in ner Schleife.
Das hab ich auch noch sooo hinbekommen . Glaub ich! Hoff ich!
Aber nun mein Problem wie kombinier ich die Schleife mit den Buttons?
DANKE!
Hier noch mein "Quelltext" der einfach nur Müll ist!
Code:
import java.awt.*;
import java.applet.Applet;
public class Aufzugwhile extends Applet implements ActionListener
public void init()
{
up = new Button("aufwaerts");
add(up);
up.addActionListener(this);
down = new Button ("abwaerts");
add(down);
down.addActionListener(this);
{
public static void main(String[] args)
{
int pos = 0;
while(pos<500)
{
bremse=(a/123456789-914521*5412-4547);
a=bremse;
public void paint (Graphics g)
{
g.setColor(Color.blue);
g.fillRect(500,pos,50,250);
}
pos++;
}
}
}
}
So... jetzt hab ich mal dies probiert ich weis zwar net ob du dies meintest aber es hat bis jetzt recht gut geklappt... nur das "fahren" des Aufzuges klappt net! Ich weis beim besten willen net wie und wo ich die Rechnung und die schleife einbauen. Und wie ich es schaff das der Aufzug bei 2 bestimmten höhen hält!
WÄR EUCH ECHT SEHR DANKBAR wenn noch mehr schlaue idee kommen... THX
Code:
import java.awt.*;
import java.applet.Applet;
import java.awt.event.*;
public class Aufzugtop extends Applet implements ActionListener
{
private Button steigen, sinken;
private Aufzug meinAufzug;
public void init()
{
steigen = new Button("Hinauf");
add(steigen);
steigen.addActionListener(this);
sinken = new Button ("Hinunter");
add(sinken);
sinken.addActionListener(this);
meinAufzug = new Aufzug(20, 250, 250);
}
public void actionPerformed(ActionEvent event)
{
if (event.getSource() == steigen)
meinAufzug.groesseVeraendern(10);
if (event.getSource() == sinken)
meinAufzug.groesseVeraendern(-10);
repaint();
}
public void paint (Graphics g)
{
meinAufzug.anzeigen(g);
setBackground(Color.red);
}
}
class Aufzug
{
private int hoehe;
private int xKoord, yKoord;
int a=100;
int b=150;
public Aufzug(int anfangsHoehe, int anfangsX, int anfangsY)
{
hoehe=anfangsHoehe;
xKoord=anfangsX;
yKoord=anfangsY;
}
public void groesseVeraendern(int veraenderung)
{
hoehe=hoehe+veraenderung;
}
public void anzeigen(Graphics g)
{
g.setColor(Color.blue);
g.fillRect(xKoord,hoehe,a,b);
}
}
Da musst du mit Threads ran.
Lies zum Beispiel mal diesen Artikel hier- (da kommt noch mehr, falls du ein bisschen hochscrollst!)
Es geht darum, dass dein Programm mehrere Sachen gleichzeitig machen kann.
Naja, ich hab eine einfache Variante aufgeschrieben, falls bei dir gar nichts mehr läuft, kannst du mal kopieren.