童真模式启动 2017-05-21 00:45 采纳率: 0%
浏览 1134
已采纳

Java中,要求实现图10-12的界面。我设计界面里有较大空挡(如图2所示),求个解决方法。

/*我用了"网格式布局",因每个单元格高度都一样,所以有很大的空挡(即右图圈出的部分)*/

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

class Student extends Frame implements TextListener,ActionListener
{
Panel p=new Panel();
Panel pName=new Panel();
Panel pHobby=new Panel();
Panel pInfo=new Panel();

  Label lName=new Label("姓名:");
  Label lHobby=new Label("爱好:");
  Label lInfo=new Label("学生信息:");

  TextField tName=new TextField(15);
  List l=new List(4,true);
  TextField tInfo=new TextField(15);
  Button b=new Button("确定");

  Student(String title)
  {
    super(title);

    l.add("篮球");
    l.add("排球");
    l.add("乒乓球");
    l.add("足球");

    pName.add(lName);
    pName.add(tName);


    pHobby.add(lHobby);
    pHobby.add(l);

    pInfo.add(lInfo);
    pInfo.add(tInfo);
    pInfo.add(b);

    p.setLayout(new GridLayout(3,1,5,5));
    p.add(pName);
    p.add(pHobby);
    p.add(pInfo);

    this.add(p);


    tName.addTextListener(this);
    b.addActionListener(this);


    this.pack();
    this.setVisible(true);
  }


  String s;
  String sName;
  String sHobby="";             //sHobby不赋初值下面输出"学生信息"时会多出一个null
  public void textValueChanged(TextEvent e)
  {
    sName=tName.getText();
  }

  public void actionPerformed(ActionEvent e)
  {
    if(e.getSource()==b)
    {
        String[] sHobby=l.getSelectedItems();
        for(int i=0;i<sHobby.length;i++)
        {
            this.sHobby+=sHobby[i]+" ";
        }
    }
    s=sName+" "+this.sHobby;
    tInfo.setText(s);
  }


  public static void main(String[] args)
  {
    new Student("学生信息调查");
  }

}
图片说明
图片说明

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-05-21 09:08
    关注

    放一个panel,固定高度,然后把你的控件放在panel里面

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Python报错怎么解决
  • ¥15 simulink如何调用DLL文件
  • ¥15 关于用pyqt6的项目开发该怎么把前段后端和业务层分离
  • ¥30 线性代数的问题,我真的忘了线代的知识了
  • ¥15 有谁能够把华为matebook e 高通骁龙850刷成安卓系统,或者安装安卓系统
  • ¥188 需要修改一个工具,懂得汇编的人来。
  • ¥15 livecharts wpf piechart 属性
  • ¥20 数学建模,尽量用matlab回答,论文格式
  • ¥15 昨天挂载了一下u盘,然后拔了
  • ¥30 win from 窗口最大最小化,控件放大缩小,闪烁问题