关于一个AWT的小问题???

thegodofwar 2009-11-09 11:26:55
import java.awt.*;
public class Text {

public static void main(String[] args) {
Frame f1=new Frame("myframewithPanel");
f1.setLayout(null);
f1.setBackground(Color.green);
f1.setBounds(200,200,300,300);
f1.setVisible(true);
f1.setResizable(true);

//Panel p1=new Panel(
Button bb=new Button("Button1");
bb.setBounds(50,50,50,50);
f1.add(new Button("Button3"),FlowLayout.LEFT);//这行为什么不起作用呀??????
f1.add(bb);
Button b1=new Button("Button2");
b1.setBackground(Color.blue);
b1.setBounds(100,100,50,50);
f1.add(b1);
}
}
...全文
74 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
不善^ 2009-11-10
  • 打赏
  • 举报
回复
首先你要知道
Frame 默认的布局管理器是Borderlayout
Panel 默认的布局管理器是FlowLayout

所以你那句要起作用必须先new一个FlowLayout
修改后的代码

import java.awt.*;
public class Text {

public static void main(String[] args) {
Frame f1=new Frame("myframewithPanel");
FlowLayout ff = new FlowLayout();

f1.setLayout(ff);
f1.setBackground(Color.green);
f1.setBounds(200,200,300,300);
f1.setVisible(true);
f1.setResizable(true);

//Panel p1=new Panel(
Button bb=new Button("Button1");
bb.setBounds(50,50,50,50);
f1.add(new Button("Button3"),ff.LEFT);//这样就起作用了
f1.add(bb);
Button b1=new Button("Button2");
b1.setBackground(Color.blue);
b1.setBounds(100,100,50,50);
f1.add(b1);
}
}

thegodofwar 2009-11-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 java_cxrs 的回复:]
首先你要知道
Frame 默认的布局管理器是Borderlayout
Panel 默认的布局管理器是FlowLayout

所以你那句要起作用必须先new一个FlowLayout
修改后的代码
Java codeimport java.awt.*;publicclass Text {publicstaticvoid main(String[] args) {
Frame f1=new Frame("myframewithPanel");
FlowLayout ff=new FlowLayout();

f1.setLayout(ff);
f1.setBackground(Color.green);
f1.setBounds(200,200,300,300);
f1.setVisible(true);
f1.setResizable(true);//Panel p1=new Panel(Button bb=new Button("Button1");
bb.setBounds(50,50,50,50);
f1.add(new Button("Button3"),ff.LEFT);//这样就起作用了f1.add(bb);
Button b1=new Button("Button2");
b1.setBackground(Color.blue);
b1.setBounds(100,100,50,50);
f1.add(b1);
}
}
[/Quote]正解,谢谢了!!!*_^
黑夜愁客 2009-11-09
  • 打赏
  • 举报
回复
f1.add(new Button("Button3"),FlowLayout.LEFT);
你是说left不起作用对吧?那是因为你自己都设定了位置(50,50).
查看各种布局,最好不要混用

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧