JAVA 创建一个带菜单的窗口,点击菜单项,窗口显示不同内容,这个怎么实现?最好用卡片布局。

来源:百度知道 编辑:UC知道 时间:2024/06/04 00:04:16
或者看看我这程序问题是什么?怎么改正?
import java.awt.*;
import java.awt.event.*;
public class XtLcb extends Frame
{
public static void main(String args[])
{
Frame frame = new Frame();
frame.setBackground(Color.lightGray);
frame.setSize(400,400);
frame.setVisible(true);
CardLayout cl = new CardLayout();

MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();
MenuItem menuFileOpen = new MenuItem();
MenuItem menuFileOn = new MenuItem();

menuFile.setLabel("File");
menuFileExit.setLabel("Exit");
menuFileOpen.setLabel("Open");
menuFileOn.setLabel("On");

Panel p = new Panel();
p.setLayout(cl);
Panel p1 = new Panel();
Panel p2 = new Panel();
p1.add(new

你这个程序就是卡片布局了,有2个小错误就是没有对p,c1定义为final.我帮你修改好了
import java.awt.*;
import java.awt.event.*;
public class XtLcb extends Frame
{
public static void main(String args[])
{
Frame frame = new Frame();
frame.setBackground(Color.lightGray);
frame.setSize(400,400);
frame.setVisible(true);
final CardLayout cl = new CardLayout();

MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();
MenuItem menuFileOpen = new MenuItem();
MenuItem menuFileOn = new MenuItem();

menuFile.setLabel("File");
menuFileExit.setLabel("Exit");
menuFileOpen.setLabel("Open");
menuFileOn.setLabel("On");

final Panel p = new Panel();
p.setLayout(cl);
Panel p1 = new Panel();
Panel p2 = new Panel();
p1.add(new Label("Open"));
p2.add(new Label("On"));
p.add(p1,"1");<