16. maj 2002 - 14:43
Der er
1 løsning
Menu
Har en menubar, men nogle af menupunkterne skal fungere som knapper, uden at der kommer et rullepanel ned ????
ja, se følgende eks:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MenuTest extends JFrame implements ActionListener, WindowListener, KeyListener
{
private int frameWidth = 640;
private int frameHeight = 480;
private JMenuBar menuBar;
private JMenuItem item;
private JLabel label;
public MenuTest()
{
createFrame();
}
private void createFrame()
{
setTitle("MenuTest");
setResizable(false);
addKeyListener(this);
addWindowListener(this);
//Place components here:
label = new JLabel("Hello World");
this.getContentPane().add(label);
item = new JMenuItem("TEST");
item.addActionListener(this);
menuBar = new JMenuBar();
menuBar.add(item);
this.getContentPane().add(menuBar, BorderLayout.NORTH);
//Center Frame
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setSize(new java.awt.Dimension(frameWidth, frameHeight));
setLocation( (screenSize.width-this.getWidth()) / 2, (screenSize.height - this.getHeight()) / 2);
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().equals("TEST"))
label.setText("Du trykkede TEST");
}
public void windowOpened(WindowEvent e){}
public void windowClosing(WindowEvent e){ endProgram();}
public void windowClosed(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void keyReleased(KeyEvent e){}
public void keyTyped(KeyEvent e){}
public void keyPressed(KeyEvent e)
{
if(e.getKeyCode()==27)
endProgram();
}
public void endProgram()
{
dispose();
System.exit(0);
}
}
class Main
{
public static void main(String args[])
{
new MenuTest().show();
}
}