我正在尝试使用{{JFrame
,JPanel
,JButton
,JLabel
,JTextField
和JPasswordField
来设计一个简单的界面1}}和GridBagLayout
。另外,如果有人告诉我,当我只有2个控件可用时,如何在2列中跨越textfield。
查看我得到的输出
看看TextField和PasswordField他们是怎么样的我试图获得更大的尺寸但是看不到我使用的代码失败。
导入所有必需的类
GridBagConstraints
添加c.weightx = 1后;最终输出
答案 0 :(得分:2)
沿X轴设置重量,使组件沿该方向展开
c.weightx = 1;
答案 1 :(得分:1)
设定重量
c.weightx = 1;
并在之后修复按钮 你的对象从grid.x 2开始,到3结束。所以填充整个页面的宽度应为3
c.fill = GridBagConstraints.HORIZONTAL;
c.gridx = 0;
c.gridy = 2;
c.gridheight=1;
// ---------------------------
c.gridwidth = 3;
或将文本字段的起始x点更改为一个
答案 2 :(得分:1)
评论这些代码行
jid.setPreferredSize(new Dimension(100, 100));
...
jpass.setPreferredSize(new Dimension(100, 100));
...
jbutton1.setPreferredSize(new Dimension(100, 100));
你会得到这个结果:
如果您希望Login
按钮位于中心,可以将UserID
和password
(标签和输入字段)放在面板中,然后将该面板添加到{{1 }}。你可能得到这样的东西: