研究了一整天AWT布局 还是不会 写出来的东西是错的 有高人指点一下吗

yulunlean 2007-11-29 06:21:20

import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class MyJsq extends JFrame
{
JTextField t=new JTextField(20);
JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b0,bdian,bjia,bjian,bchen,bchu,bdeng,bce;
public void init()
{
BorderLayout text=new BorderLayout();
text.add(t,North);
GridLayout jsq=new GridLayout();
jsq.setLayout(4,4);
b1=new JButton("1");
b2=new JButton("2");
b3=new JButton("3");
b4=new JButton("4");
b5=new JButton("5");
b6=new JButton("6");
b7=new JButton("7");
b8=new JButton("8");
b9=new JButton("9");
b0=new JButton("0");
bdian=new JButton(".");
bjia=new JButton("+");
bchu=new JButton("/");
bchen=new JButton("*");
bdeng=new JButton("=");
bjian=new JButton("-");
bce=new JButton("CE");
add(b7);
add(b8);
add(b9);
add(bjia);
add(b4);
add(b5);
add(b6);
add(bjian);
add(b1);
add(b2);
add(b3);
add(bchen);
add(b0);
add(bce);
add(bdeng);
add(bjia);
add(jsq,South);
}
}

吧GridLayout嵌入一个BorderLayout中
怎么写啊
...全文
127 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jellywen 2007-12-01
  • 打赏
  • 举报
回复
楼上正解...
t88266236 2007-12-01
  • 打赏
  • 举报
回复
一个容器一次只能有一种布局方式,要实现复杂的布局可以使用JPanel等控件,这样我们就可以在Panel中使用另外的布局方式,最后将他add进其他容器就OK了
wang_yingwei 2007-11-30
  • 打赏
  • 举报
回复
JPanel buttonPanel = null; 初始化为null,即未指向有有实例
super(); //执行超类的构造函数
init(); //执行自定义的方法
yulunlean 2007-11-29
  • 打赏
  • 举报
回复
帮我看一下这个
JPanel buttonPanel = null;
这一句什么意思
super();
init();

这个也看不懂
jellywen 2007-11-29
  • 打赏
  • 举报
回复
楼主写得很乱,看看这个是不是你要的。
把按钮写在一个GridLayout布局的JPanel上,然后把JPanel与JTextField放到BorderLayout布局的JFrame上。

import java.awt.BorderLayout;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class MyJsq extends JFrame {
JTextField t = new JTextField(20);
JPanel buttonPanel = null;
JButton b1, b2, b3, b4, b5, b6, b7, b8, b9, b0, bdian, bjia, bjian, bchen,
bchu, bdeng, bce;
public MyJsq() {
super();
init();
}

public void init() {
this.setLayout(new BorderLayout());
this.add(t, BorderLayout.NORTH);
this.add(getPanel(),BorderLayout.CENTER);
this.setSize(300, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
this.setVisible(true);
}

private JPanel getPanel() {
if(buttonPanel == null) {
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(4,4));
b1 = new JButton("1");
b2 = new JButton("2");
b3 = new JButton("3");
b4 = new JButton("4");
b5 = new JButton("5");
b6 = new JButton("6");
b7 = new JButton("7");
b8 = new JButton("8");
b9 = new JButton("9");
b0 = new JButton("0");
bdian = new JButton(".");
bjia = new JButton("+");
bchu = new JButton("/");
bchen = new JButton("*");
bdeng = new JButton("=");
bjian = new JButton("-");
bce = new JButton("CE");
buttonPanel.add(b7);
buttonPanel.add(b8);
buttonPanel.add(b9);
buttonPanel.add(bjia);
buttonPanel.add(b4);
buttonPanel.add(b5);
buttonPanel.add(b6);
buttonPanel.add(bjian);
buttonPanel.add(b1);
buttonPanel.add(b2);
buttonPanel.add(b3);
buttonPanel.add(bchen);
buttonPanel.add(b0);
buttonPanel.add(bce);
buttonPanel.add(bdeng);
buttonPanel.add(bjia);
}
return buttonPanel;
}

public static void main(String[] args) {
new MyJsq();
}
}
yulunlean 2007-11-29
  • 打赏
  • 举报
回复

import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class MyJsq extends JFrame
{
JTextField t=new JTextField(20);
JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b0,bdian,bjia,bjian,bchen,bchu,bdeng,bce;
public void init()
{
BorderLayout text=new BorderLayout();
text.add(t,North);
GridLayout jsq=new GridLayout();
jsq.setLayout(4,4);
b1=new JButton("1");
b2=new JButton("2");
b3=new JButton("3");
b4=new JButton("4");
b5=new JButton("5");
b6=new JButton("6");
b7=new JButton("7");
b8=new JButton("8");
b9=new JButton("9");
b0=new JButton("0");
bdian=new JButton(".");
bjia=new JButton("+");
bchu=new JButton("/");
bchen=new JButton("*");
bdeng=new JButton("=");
bjian=new JButton("-");
bce=new JButton("CE");
add(b7);
add(b8);
add(b9);
add(bjia);
add(b4);
add(b5);
add(b6);
add(bjian);
add(b1);
add(b2);
add(b3);
add(bchen);
add(b0);
add(bce);
add(bdeng);
add(bjia);
add(jsq,South);
}
}




我写的
但是不对

62,623

社区成员

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

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