B
blabla
Gast
Ich will einen Frame bei dem ich einen Text mit hilfe eines Buttons nach rechts schieben kann.
Der Text soll sich in einer Canvas befinden.
Funzt aber irgendwie nicht. Warum?
[/code]
Der Text soll sich in einer Canvas befinden.
Funzt aber irgendwie nicht. Warum?
Code:
import java.awt.*;
import java.awt.event.*;
public class Test extends Frame implements ActionListener
{
MyCanvas canvas;
Button b;
public Test()
{
super("Test");
setSize(450,300);
setLocation(300,300);
setLayout(null);
b=new Button("Right");
add(b);
b.addActionListener(this );
b.setLocation(350,10);
b.setSize(80,15);
canvas=new MyCanvas();
add(canvas);
canvas.setSize(300,200);
canvas.setLocation(20,20);
setVisible(true);
}
public static void main(String[] args)
{
new Test();
}
public void actionPerformed(ActionEvent e)
{
canvas.repaint();
}
}
class MyCanvas extends Canvas
{
Color bg;
int w,h;
int x;
public MyCanvas()
{
super();
w=300;
h=200;
bg=Color.WHITE;
setBackground(bg);
setForeground(Color.BLACK);
x=10;
}
public Dimension getPreferredSize()
{
return new Dimension(w,h);
}
public Dimension getMinimumSize()
{
return getPreferredSize();
}
public void update(Graphics g)
{
paint(g);
}
public void paint(Graphics g)
{
g.drawString("bla bla",x+=5,30);
}
}