slowguy 2010-05-12 16:15
浏览 1993
已采纳

如何设置JTextField的大小呢?

最近用swing做了一个界面,说真的,swing的布局,外观太不好调了。
请问谁能告诉我如下将下面的textfild的大小调成跟光标那么高的高度吗?
[img]http://dl.iteye.com/upload/attachment/248398/8cfbd67e-8461-3563-bff1-87a91db92255.jpg[/img]

  • 写回答

6条回答

  • g_johnson_lee 2010-05-13 11:06
    关注

    是性别单选按键组的问题,你性别单选按钮组是用的JPanel装的两个JRadioButton吧,把这个JPanel的Layout设为 new FlowLayout(FlowLayout.CENTER, 0, 0)就OK了,见下面代码:
    [code="java"]
    package org.zergle.test.swing;

    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.GridLayout;

    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JRadioButton;
    import javax.swing.JTextField;
    import javax.swing.border.LineBorder;

    public class ReaderAddIFrame extends JFrame {
    private JLabel lblName = new JLabel("姓名");
    private JTextField txtName = new JTextField();
    private JLabel lblSex = new JLabel("性别");
    private JRadioButton radMale = new JRadioButton("男");
    private JRadioButton radFemale = new JRadioButton("女");
    private JLabel lblAge = new JLabel("年齡");
    private JTextField txtAge = new JTextField();
    private JLabel lblCareer = new JLabel("职业");
    private JTextField txtCareer = new JTextField();

    private JPanel pnl1 = new JPanel();
    private JPanel pnl1_1 = new JPanel(new GridLayout(2, 4));
    private JPanel pnlSexGroup = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));
    
    public ReaderAddIFrame() {
        this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
        this.pnlSexGroup.add(this.radMale);
        this.pnlSexGroup.add(this.radFemale);
        this.pnl1_1.add(this.lblName);
        this.pnl1_1.add(this.txtName);
        this.pnl1_1.add(this.lblSex);
        this.pnl1_1.add(this.pnlSexGroup);
        this.pnl1_1.add(this.lblAge);
        this.pnl1_1.add(this.txtAge);
        this.pnl1_1.add(this.lblCareer);
        this.pnl1_1.add(this.txtCareer);
        this.pnl1.add(this.pnl1_1);
        this.add(this.pnl1, BorderLayout.CENTER);
        this.setSize(600, 400);
        this.setVisible(true);
    }
    
    public static void main(String[] args) {
        new ReaderAddIFrame();
    }
    

    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大