关于布局问题? 这个一般的书上太多了吧, 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那去看,很全的import java.awt.*; public class LayoutApp extends Frame{ MenuBar menuBar; Panel panels[]; Panel currentPanel; static int border=0; static int card=1; static int flow=2; static int grid=3; static int gridBag=4; Menu cardMenu; public static void main(String[] args) { LayoutApp app=new LayoutApp(); } public LayoutApp() { setup(); resize(400,400); show(); } void setup() { setupMenuBar(); setupPanels(); } void setupMenuBar() { menuBar=new MenuBar(); Menu fileMenu=new Menu("File"); fileMenu.add(new MenuItem("Exit")); menuBar.add(fileMenu); Menu panelMenu=new Menu("Panel"); panelMenu.add(new MenuItem("BorderLayout")); panelMenu.add(new MenuItem("CardLayout")); panelMenu.add(new MenuItem("FlowLayout")); panelMenu.add(new MenuItem("GridLayout")); panelMenu.add(new MenuItem("GridBagLayout")); menuBar.add(panelMenu); cardMenu=new Menu("Card"); cardMenu.add(new MenuItem("First")); cardMenu.add(new MenuItem("Last")); cardMenu.add(new MenuItem("Next")); cardMenu.add(new MenuItem("Previous")); setMenuBar(menuBar); } void setupPanels() { panels=new Panel[5]; for (int i=0;i<5;++i) panels[i]=new Panel(); panels[border].setLayout(new BorderLayout()); panels[card].setLayout(new CardLayout()); panels[flow].setLayout(new FlowLayout()); panels[grid].setLayout(new GridLayout(3,3)); GridBagLayout gridBagLayout=new GridBagLayout(); panels[gridBag].setLayout(gridBagLayout); //Set BorderLayout: panels[border].add("North",new Button("North")); panels[border].add("South",new Button("South")); panels[border].add("East",new Button("East")); panels[border].add("West",new Button("West")); panels[border].add("Center",new Button("Center")); String cardButtons[]={"First","Second","Third","Fourth","Last"}; String flowButtons[]={"One","Two","Three","Four","Five"}; String gridButtons[]={"(0,0)","(1,0)","(2,0)","(0,1)","(1,1)","(2,1)","(3,1)","(2,1)","(3,1)"}; for (int i=0;i<cardButtons.length;++i) panels[card].add(cardButtons[i],new Button(cardButtons[i])); for (int i=0;i<flowButtons.length;++i) panels[flow].add(new Button(flowButtons[i])); for (int i=0;i<gridButtons.length;++i) panels[grid].add(new Button(gridButtons[i])); Button gridBagButtons[]=new Button[9]; for (int i=0;i<9;++i) gridBagButtons[i]=new Button("Button"+i); int gridx[]={0,1,2,0,2,0,1,1,8}; int gridy[]={0,0,0,1,1,2,2,3,6}; int gridwidth[]={1,1,1,2,1,1,1,2,3}; int gridheight[]={1,1,1,1,2,2,1,1,1}; GridBagConstraints gridBagConstraints[]=new GridBagConstraints[9]; for (int i=0;i<9;++i) { gridBagConstraints[i]=new GridBagConstraints(); gridBagConstraints[i].fill=GridBagConstraints.BOTH; gridBagConstraints[i].gridx=gridx[i]; gridBagConstraints[i].gridy=gridy[i]; // gridBagConstraints[i].gridwidth=gridwidth[i]; // gridBagConstraints[i].gridheight=gridheight[i]; gridBagLayout.setConstraints(gridBagButtons[i],gridBagConstraints[i]); panels[gridBag].add(gridBagButtons[i]); }// add("Center",panels[border]); add(panels[border]); currentPanel=panels[border]; } public boolean handleEvent(Event e) { if (e.id==Event.WINDOW_DESTROY) { System.exit(0); return true; } else if (e.id==Event.ACTION_EVENT) { if (e.target instanceof MenuItem) { if ("Exit".equals(e.arg)) { System.exit(0); return true; } if ("BorderLayout".equals(e.arg)) { switchPanels(panels[border],"BorderLayout",false); return true; } if ("CardLayout".equals(e.arg)) { switchPanels(panels[card],"CardLayout",true); return true; } if ("FlowLayout".equals(e.arg)) { switchPanels(panels[flow],"FlowLayout",false); return true; } if ("GridLayout".equals(e.arg)) { switchPanels(panels[grid],"GridLayout",false); return true; } if ("GridBagLayout".equals(e.arg)) { switchPanels(panels[gridBag],"GridBagLayout",false); return true; } if ("First".equals(e.arg)) { CardLayout currentLayout=(CardLayout)currentPanel.getLayout(); currentLayout.first(currentPanel); return true; } if ("Next".equals(e.arg)) { CardLayout currentLayout=(CardLayout)currentPanel.getLayout(); currentLayout.next(currentPanel); return true; } if ("Last".equals(e.arg)) { CardLayout currentLayout=(CardLayout)currentPanel.getLayout(); currentLayout.last(currentPanel); return true; } if ("Previous".equals(e.arg)) { CardLayout currentLayout=(CardLayout)currentPanel.getLayout(); currentLayout.previous(currentPanel); return true; } } } return false; } void switchPanels(Panel newPanel,String newTitle,boolean setCardMenu) { remove(currentPanel); currentPanel=newPanel; add(currentPanel); setTitle(newTitle); if (setCardMenu) menuBar.add(cardMenu); else menuBar.remove(cardMenu); show(); }} swing怎么用代码促发监听事件 在java应用中使用JApplet类出错 applet 向jsp传递参数的问题 如何监听变量的变化 applet.policy的设置 问题比较多!把我的所有分都 给上 ,解决问题就给分。 请教问题 求一JAVAMAIL 带附件 收发程序 java的applet在ie下运行,ie提示没有找到对应的类。 用一直线连接鼠标在panel的两点,,有2点疑问,, 菜鸟中问题 请计算机家庭教师 java错误找不到java.lang.Object,求救大佬们 大家来谈谈object和record的区别吧!!!! Java里最好的RAD开发工具是哪个?
public class LayoutApp extends Frame
{
MenuBar menuBar;
Panel panels[];
Panel currentPanel;
static int border=0;
static int card=1;
static int flow=2;
static int grid=3;
static int gridBag=4;
Menu cardMenu;
public static void main(String[] args)
{
LayoutApp app=new LayoutApp();
}
public LayoutApp()
{
setup();
resize(400,400);
show();
}
void setup()
{
setupMenuBar();
setupPanels();
}
void setupMenuBar()
{
menuBar=new MenuBar();
Menu fileMenu=new Menu("File");
fileMenu.add(new MenuItem("Exit"));
menuBar.add(fileMenu);
Menu panelMenu=new Menu("Panel");
panelMenu.add(new MenuItem("BorderLayout"));
panelMenu.add(new MenuItem("CardLayout"));
panelMenu.add(new MenuItem("FlowLayout"));
panelMenu.add(new MenuItem("GridLayout"));
panelMenu.add(new MenuItem("GridBagLayout"));
menuBar.add(panelMenu);
cardMenu=new Menu("Card");
cardMenu.add(new MenuItem("First"));
cardMenu.add(new MenuItem("Last"));
cardMenu.add(new MenuItem("Next"));
cardMenu.add(new MenuItem("Previous"));
setMenuBar(menuBar);
}
void setupPanels()
{
panels=new Panel[5]; for (int i=0;i<5;++i) panels[i]=new Panel();
panels[border].setLayout(new BorderLayout());
panels[card].setLayout(new CardLayout());
panels[flow].setLayout(new FlowLayout());
panels[grid].setLayout(new GridLayout(3,3));
GridBagLayout gridBagLayout=new GridBagLayout();
panels[gridBag].setLayout(gridBagLayout); //Set BorderLayout:
panels[border].add("North",new Button("North"));
panels[border].add("South",new Button("South"));
panels[border].add("East",new Button("East"));
panels[border].add("West",new Button("West"));
panels[border].add("Center",new Button("Center"));
String cardButtons[]={"First","Second","Third","Fourth","Last"};
String flowButtons[]={"One","Two","Three","Four","Five"};
String gridButtons[]={"(0,0)","(1,0)","(2,0)","(0,1)","(1,1)","(2,1)","(3,1)","(2,1)","(3,1)"};
for (int i=0;i<cardButtons.length;++i)
panels[card].add(cardButtons[i],new Button(cardButtons[i]));
for (int i=0;i<flowButtons.length;++i)
panels[flow].add(new Button(flowButtons[i]));
for (int i=0;i<gridButtons.length;++i)
panels[grid].add(new Button(gridButtons[i]));
Button gridBagButtons[]=new Button[9];
for (int i=0;i<9;++i)
gridBagButtons[i]=new Button("Button"+i);
int gridx[]={0,1,2,0,2,0,1,1,8};
int gridy[]={0,0,0,1,1,2,2,3,6};
int gridwidth[]={1,1,1,2,1,1,1,2,3};
int gridheight[]={1,1,1,1,2,2,1,1,1};
GridBagConstraints gridBagConstraints[]=new GridBagConstraints[9];
for (int i=0;i<9;++i)
{
gridBagConstraints[i]=new GridBagConstraints();
gridBagConstraints[i].fill=GridBagConstraints.BOTH;
gridBagConstraints[i].gridx=gridx[i];
gridBagConstraints[i].gridy=gridy[i];
// gridBagConstraints[i].gridwidth=gridwidth[i];
// gridBagConstraints[i].gridheight=gridheight[i];
gridBagLayout.setConstraints(gridBagButtons[i],gridBagConstraints[i]);
panels[gridBag].add(gridBagButtons[i]);
}
// add("Center",panels[border]);
add(panels[border]);
currentPanel=panels[border];
}
public boolean handleEvent(Event e)
{
if (e.id==Event.WINDOW_DESTROY)
{
System.exit(0);
return true;
}
else
if (e.id==Event.ACTION_EVENT)
{
if (e.target instanceof MenuItem)
{
if ("Exit".equals(e.arg))
{
System.exit(0);
return true;
}
if ("BorderLayout".equals(e.arg))
{
switchPanels(panels[border],"BorderLayout",false);
return true;
}
if ("CardLayout".equals(e.arg))
{
switchPanels(panels[card],"CardLayout",true);
return true;
}
if ("FlowLayout".equals(e.arg))
{
switchPanels(panels[flow],"FlowLayout",false);
return true;
}
if ("GridLayout".equals(e.arg))
{
switchPanels(panels[grid],"GridLayout",false);
return true;
}
if ("GridBagLayout".equals(e.arg))
{
switchPanels(panels[gridBag],"GridBagLayout",false);
return true;
}
if ("First".equals(e.arg))
{
CardLayout currentLayout=(CardLayout)currentPanel.getLayout();
currentLayout.first(currentPanel);
return true;
}
if ("Next".equals(e.arg))
{
CardLayout currentLayout=(CardLayout)currentPanel.getLayout();
currentLayout.next(currentPanel);
return true;
}
if ("Last".equals(e.arg))
{
CardLayout currentLayout=(CardLayout)currentPanel.getLayout();
currentLayout.last(currentPanel);
return true;
}
if ("Previous".equals(e.arg))
{
CardLayout currentLayout=(CardLayout)currentPanel.getLayout();
currentLayout.previous(currentPanel);
return true;
}
}
}
return false;
}
void switchPanels(Panel newPanel,String newTitle,boolean setCardMenu)
{
remove(currentPanel);
currentPanel=newPanel;
add(currentPanel);
setTitle(newTitle);
if (setCardMenu)
menuBar.add(cardMenu);
else
menuBar.remove(cardMenu);
show();
}
}