一个GUI的烤鸭程序, 可难坏我这个菜鸟了, 各位大虾帮一把吧, 多谢了.
// 面板的大小如何设置 ???
import java.awt.*;
public class Foo
{
public static void main(String []args)
{
Frame frame = new Frame("My GUI");
/* 无参的面板不存在问题
PanelTest p1= new PanelTest();
有参的参数如何跟?
原型是 public Panel(LayoutManager layout)
PanelTest p1= new PanelTest(FlowLayout);
PanelTest(FlowLayout) p1= new PanelTest;
PanelTest p1= new PanelTest(LayoutManager FlowLayout);
*/
PanelTest p1= new PanelTest();
frame.add(p1, BorderLayout.NORTH);
p1.setLayout(new FlowLayout());
Choice choice = new Choice();
choice.addItem("AAA");
choice.add("BBB");
choice.add("CCC");
p1.add(choice);
choice.select("CCC"); // 设置默认选中"CCC"
//choice.select(2);
PanelTest p2= new PanelTest();
frame.add(p2, BorderLayout.WEST);
p2.setLayout(new GridLayout(2, 2));
Button button1 = new Button("1"); // 如何设定Button的大小
Button button2 = new Button("2");
Button button3 = new Button("3");
Button button4 = new Button("4");
p2.add(button1);
p2.add(button2);
p2.add(button3);
p2.add(button4);
/**/
PanelTest p3= new PanelTest();
frame.add(p3, BorderLayout.SOUTH);
p3.setLayout(new FlowLayout());
Label lblName = new Label("名称 :"); // 我想让Lable竖起来可以吗? 名
TextField texName = new TextField(10); // 原本是 "名称: " 我现在要它变成 称: 能实现吗?
p3.add(lblName);
p3.add(texName);
Label lblName2 = new Label("名称 :");
TextField texName2 = new TextField(10);
p3.add(lblName2);
p3.add(texName2);
PanelTest p4= new PanelTest();
frame.add(p4, BorderLayout.EAST);
Checkbox chk1 = new Checkbox("one", true);
Checkbox chk2 = new Checkbox("two");
Checkbox chk3 = new Checkbox("three");
p3.setLayout(new FlowLayout());
p4.add(chk1);
p4.add(chk2);
p4.add(chk3);
p3.setLayout(new FlowLayout()); // 如何换行, 我不希望多选和单选出现在一行里
CheckboxGroup cg = new CheckboxGroup();
Checkbox chk6 = new Checkbox("1", cg, true);
Checkbox chk7 = new Checkbox("2", cg, false);
p4.add(chk6);
p4.add(chk7);
TextArea textArea = new TextArea(5, 5);
// 我只设置了5行5列, 应该是个不大的正方形, 为什么在运行中大的象猪头一样.
// 我知道这是默认边际布局造成的, 但问题是如何让文本框变小些呢?
frame.add(textArea, BorderLayout.CENTER);
frame.setSize(400, 400);
frame.setResizable(false);
frame.show();
}
}
问题点数:0、回复次数:11Top
1 楼light56(炸酱面)回复于 2004-12-02 13:15:07 得分 0
自己帮自己顶一下.Top
2 楼kaymo( 。。。 )回复于 2004-12-02 13:50:18 得分 0
setSize( new Dimension( 1024, 768 ) );//面板的大小如何设置
setBounds( x, y, w, h );// 如何设定Button的大小
Top
3 楼kaymo( 。。。 )回复于 2004-12-02 13:55:14 得分 0
texName.setText("称:"); // 原本是 "名称: " 我现在要它变成 称: 能实现吗?
最好设置成null,自己控制// 如何换行, 我不希望多选和单选出现在一行里
同上 // 我只设置了5行5列, 应该是个不大的正方形, 为什么在运行中大的象猪头一样.
// 我知道这是默认边际布局造成的, 但问题是如何让文本框变小些呢?Top
4 楼light56(炸酱面)回复于 2004-12-02 14:56:50 得分 0
上午还好好的, 到下午咋就不成了呢?
Foo.java:20: cannot resolve symbol
symbol : class PanelTest
location: class Foo
PanelTest p1= new PanelTest();
^Top
5 楼light56(炸酱面)回复于 2004-12-02 15:32:11 得分 0
setSize( new Dimension( 1024, 768 ) ); //面板的大小如何设置?
PanelTest p1= new PanelTest();
frame.add(p1, BorderLayout.NORTH);
p1.setSize( new Dimension( 80, 88 ) ); // 没实现, 应该如何做呢?Top
6 楼jxj12345678(jxj)回复于 2004-12-02 21:01:18 得分 0
TextArea textArea = new TextArea(5, 5);
// 我只设置了5行5列, 应该是个不大的正方形, 为什么在运行中大的象猪头一样.
// 我知道这是默认边际布局造成的, 但问题是如何让文本框变小些呢?
----------------------------------------------------------------
public void setMaximumSize(Dimension maximumSize)//设置最大尺寸
public void setMinimumSize(Dimension minimumSize)//设置最小尺寸
public void setPreferredSize(Dimension preferredSize)//设置首选尺寸
//其它组件也一样。
另:
setSize(int width, int height);Top
7 楼mengxianwei007(一个来上海打工的民工)回复于 2004-12-02 22:00:41 得分 0
JBuilder is an effective tools in some aspects such as Grapchics designTop
8 楼lightEIF(苍鹰)回复于 2004-12-02 22:25:00 得分 0
setBounds( x, y, w, h );// 如何设定Button的大小
这个不是设按纽大小,不要看Bounds就联想到Button,这是设组件的位置和大小的,
x:左上角x坐标
y:左上角y坐标
w:组件的宽
h:组件的高
它想当于执行这两个语句setLocation(x,y);setSize(w,h);Top
9 楼grpengwei(宠米)回复于 2004-12-02 22:30:11 得分 0
setBounds( x, y, w, h );Top
10 楼xuan9932()回复于 2004-12-03 03:54:08 得分 0
你用JB不就行了吗?将layout 设置成null 或xylayoutTop
11 楼funcreal(为中华之崛起而编程)回复于 2004-12-03 08:24:44 得分 0
恩,不赖,同意楼上的,用jbTop




