大家帮我看下这个java的awt小程序
原题要求:Java类库在java.awt包中提供各种GUI组件的类、如Frame、Panel、Button、TextField、Label等。利用JavaAPI帮助文档,...
原题要求:Java 类库在java.awt包中提供各种GUI组件的类、如Frame、Panel、Button、TextField、Label等。利用Java API帮助文档,运用类的继承和组合类复用技术编写程序运行界面如下图:
我写的代码如下:
import java.awt.*;
import java.awt.event.*;
public class TestAWT extends Frame
{
Panel p = new Panel();
TextField[] tf ;
Label[] label;
Button btn1 = new Button("确定");
Button btn2 = new Button("取消");
TestAWT()
{
setTitle("广州大学华软软件学院");
setBounds(250,150,500,400);
setResizable(false);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
add(p);
try
{
tf = new TextField[5];
label = new Label[5];
for(int i=0; i<tf.length; i++)
{
label[i] = new Label("label" + i);
label[i].setLocation(180,50+30*i);
tf[i] = new TextField();
tf[i].setBounds(300,50+30*i,100,20);
p.add(tf[i]);
p.add(label[i]);
}
}
catch(Exception e)
{
e.printStackTrace();
}
p.add(btn1);
p.add(btn2);
setVisible(true);
}
public static void main(String[] args)
{
TestAWT ta = new TestAWT();
}
}
大家帮我看下哪里有问题了,那个界面布局要怎么弄,都堆在一起了
本人初学者,不想用集成工具,请高手赐教~~脑子不好使 展开
我写的代码如下:
import java.awt.*;
import java.awt.event.*;
public class TestAWT extends Frame
{
Panel p = new Panel();
TextField[] tf ;
Label[] label;
Button btn1 = new Button("确定");
Button btn2 = new Button("取消");
TestAWT()
{
setTitle("广州大学华软软件学院");
setBounds(250,150,500,400);
setResizable(false);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
add(p);
try
{
tf = new TextField[5];
label = new Label[5];
for(int i=0; i<tf.length; i++)
{
label[i] = new Label("label" + i);
label[i].setLocation(180,50+30*i);
tf[i] = new TextField();
tf[i].setBounds(300,50+30*i,100,20);
p.add(tf[i]);
p.add(label[i]);
}
}
catch(Exception e)
{
e.printStackTrace();
}
p.add(btn1);
p.add(btn2);
setVisible(true);
}
public static void main(String[] args)
{
TestAWT ta = new TestAWT();
}
}
大家帮我看下哪里有问题了,那个界面布局要怎么弄,都堆在一起了
本人初学者,不想用集成工具,请高手赐教~~脑子不好使 展开
4个回答
展开全部
这个就是布局设置,使用不同的layout实现,这个你应该知道的吧,有flowlayout,grouplayout,borderlayout等。
我给你个建议,你可以使用一些图形界面设计可视化插件,比较有名的像jigloo。你只要拖拉控件就可以了,他有默认的布局格式,你也可以选择,就像选word图片环绕方式一样,比较方便。当然有的IDE直接支持可视化,像NETBEANS。
另外awt是java比较老的图形界面制作包,你可以看下api文档,基本上很多东西都不用了,现在有个包是javax.swing,里面都是对awt包的发展,像JButton这种。
_____________________________________________________
我觉得我讲得已经很清楚了,第一,panel是一个试图,在上面加控件就必须要设置布局;第二,如果你不使用这些控件,你就会很蛋疼,在那边搞布局要搞半天。
我给你个建议,你可以使用一些图形界面设计可视化插件,比较有名的像jigloo。你只要拖拉控件就可以了,他有默认的布局格式,你也可以选择,就像选word图片环绕方式一样,比较方便。当然有的IDE直接支持可视化,像NETBEANS。
另外awt是java比较老的图形界面制作包,你可以看下api文档,基本上很多东西都不用了,现在有个包是javax.swing,里面都是对awt包的发展,像JButton这种。
_____________________________________________________
我觉得我讲得已经很清楚了,第一,panel是一个试图,在上面加控件就必须要设置布局;第二,如果你不使用这些控件,你就会很蛋疼,在那边搞布局要搞半天。
展开全部
你都没有加 布局管理器
比如:
Panel p = new Panel();
p.setLayOut(new BorderLayOut());
p.add(btn1,BorderLayOut.NORTH);
类似的写法,还有好几种布局管理器 可以查查
比如:
Panel p = new Panel();
p.setLayOut(new BorderLayOut());
p.add(btn1,BorderLayOut.NORTH);
类似的写法,还有好几种布局管理器 可以查查
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在add(p)前面加上:
p.setLayOut(new BorderLayOut());
然后在自己布局一下即可。
p.setLayOut(new BorderLayOut());
然后在自己布局一下即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询