PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : schließen und buttons? java


Gast123-321
2005-06-16, 13:58:42
wie mach ich da jetzt buttons und wie aktivier ich das ich es schliesse?
import java.awt.*;
import java.awt.event.*;
public class FensterTest extends Frame // von Frame erben
{
public FensterTest(){}
public FensterTest(String s)
{
super(s);
setBackground(Color.pink);
setForeground(Color.yellow);
}

public void paint(Graphics g)
{
g.setColor(Color.red);
g.drawString("Hatschi",100,120);
g.drawLine(0,10,500,300);
g.setColor(Color.blue);
g.drawLine(0,300,500,20);
g.setColor(Color.black);
g.drawRect(200,200,120,80);
g.setColor(Color.green);
g.fillRect(201,201,118,78);
g.drawOval(50,50,80,80);
g.fillOval(150,50,180,80);
}

public static void main (String[] args)
{
FensterTest f = new FensterTest("Das unschliessbare Fenster"); //Objekt erzeugen, Aufruf Konstruktor
f.setSize(500, 300);
f.show();
}
}
ist nur ein testprogramm, ich bin noch nicht so gut wie capm
danke

mithrandir
2005-06-16, 16:31:57
Dere!

Was genau moechtest du? Du hast etwas von Buttons gesagt. Sollen die in einem eigenen Panel sein? Z.B. so:

import java.awt.*;
import java.awt.event.*;

public class MyFrame extends Frame implements ActionListener, WindowListener
{
public MyFrame( String title )
{
super( title );

initGraphicsPanel();

initButtonPanel();

addWindowListener( this );
}

private void initGraphicsPanel()
{
add( new GraphicsPanel(), BorderLayout.CENTER );
}

private void initButtonPanel()
{
Panel p = new Panel( new FlowLayout() );

Button okButton = new Button( "OK" );
okButton.setActionCommand( "ok" );
okButton.addActionListener( this );

Button cancelButton = new Button( "Cancel" );
cancelButton.setActionCommand( "cancel" );
cancelButton.addActionListener( this );

Button quitButton = new Button( "Quit" );
quitButton.setActionCommand( "quit" );
quitButton.addActionListener( this );

p.add( okButton );
p.add( cancelButton );
p.add( quitButton );

add( p, BorderLayout.SOUTH );
}

public void actionPerformed( ActionEvent e )
{
String strCommand = e.getActionCommand();

if ( "ok".equals( strCommand ) )
{
// do something
}
else if ( "cancel".equals( strCommand ) )
{
// do something else
}
else if ( "quit".equals( strCommand ) )
{
System.exit( 0 );
}
else
{
// wtf?
}
}

public void windowActivated( WindowEvent e )
{
// TODO Auto-generated method stub
}

public void windowClosed( WindowEvent e )
{
// TODO Auto-generated method stub
}

public void windowClosing( WindowEvent e )
{
System.exit( 0 );
}

public void windowDeactivated( WindowEvent e )
{
// TODO Auto-generated method stub
}

public void windowDeiconified( WindowEvent e )
{
// TODO Auto-generated method stub
}

public void windowIconified( WindowEvent e )
{
// TODO Auto-generated method stub
}

public void windowOpened( WindowEvent e )
{
// TODO Auto-generated method stub
}

public static void main (String[] args)
{
MyFrame f = new MyFrame( "Some Window" );
f.setSize( 500, 350 );
f.show();
}
}
class GraphicsPanel extends Panel
{
public GraphicsPanel()
{
super();

initColors();
}

private void initColors()
{
setBackground( Color.pink );
setForeground( Color.yellow );
}

public void paint( Graphics g )
{
g.setColor(Color.red);
g.drawString("Hatschi",100,120);
g.drawLine(0,10,500,300);
g.setColor(Color.blue);
g.drawLine(0,300,500,20);
g.setColor(Color.black);
g.drawRect(200,200,120,80);
g.setColor(Color.green);
g.fillRect(201,201,118,78);
g.drawOval(50,50,80,80);
g.fillOval(150,50,180,80);
}
}
bye, mith