import java.awt.*;import javax.swing.*;public class L5_13_L5_14用户登录界面 extends JFrame{ JLabel[] biaoqian = new JLabel[10]; JPanel[] jp = new JPanel[10]; JButton[] button = new JButton[10]; JCheckBox[] fxk = new JCheckBox[10]; JTextField wbk; JPasswordField mmk; public static void main(String[] args){ L5_13_L5_14用户登录界面 l = new L5_13_L5_14用户登录界面(); } L5_13_L5_14用户登录界面() { biaoqian[0] = new JLabel(new ImageIcon("image/qqq.png")); biaoqian[0].setPreferredSize(new Dimension(0, 50));//这个是设置高度的大小的。 jp[0] = new JPanel(new GridLayout(3, 3)); jp[1] = new JPanel(); biaoqian[1] = new JLabel("用户名", JLabel.CENTER); biaoqian[2] = new JLabel("密 码", JLabel.CENTER); wbk = new JTextField(10); mmk = new JPasswordField(); button[0] = new JButton(new ImageIcon("image/baidu.png")); button[0] = new JButton("按钮"); biaoqian[3] = new JLabel("忘记密码"); biaoqian[3].setFont(new Font("宋体", Font.PLAIN, 16)); biaoqian[3].setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); fxk[0] = new JCheckBox("隐身登录"); fxk[1] = new JCheckBox("记住梦想"); biaoqian[4] = new JLabel("<html><a href = 'www.qq.com'>申请密码保护</a>"); biaoqian[4].setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); button[1] = new JButton("登录"); button[2] = new JButton("取消"); button[3] = new JButton("向导"); jp[0].add(biaoqian[1]); jp[0].add(wbk); jp[0].add(button[0]); jp[0].add(biaoqian[2]); jp[0].add(mmk); jp[0].add(biaoqian[3]); jp[0].add(fxk[0]); jp[0].add(fxk[1]); jp[0].add(biaoqian[4]); jp[1].add(button[1]); jp[1].add(button[2]); jp[1].add(button[3]); jp[1].setPreferredSize(new Dimension(0, 50)); this.add(biaoqian[0], BorderLayout.NORTH); this.add(jp[0]); this.add(jp[1], BorderLayout.SOUTH); this.setSize(320, 255); this.setLocation(800, 400); //this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } }这个是代码,刚才发的图片是运行图,我想问问大神们怎么把文本框(输入账号和密码的)变得矮一点,我上网搜了好多方法都不管用,可能是不适合我的这种情况。我的文本框是放在GridLayout里的。GrilLayout的格式为GridLayout(3 , 3);我知道可以用GridLayout(3, 3, 15, 15);来调整各个组件之间的间距。但是我想实现的是单独的把JTextField文本框变小。大神们看看能不能帮我解决一下。谢谢了!
把文本框和密码框,在放入一个JPanel里,然后把这个JPanel放入到网格布局里即可
代码如下
//核心代码第一部分, 设置文本框,密码框长度预览图
代码如下:
package Knight.view;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Toolkit;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class login extends JFrame {
JPanel header,container,footer;
JLabel username,password;
JTextField username_text;
JPasswordField password_text;
JButton submit,exit;
JLabel logo = null;
ImageIcon img = null;
public login(){
super();
setSize(467,300);
int width = Toolkit.getDefaultToolkit().getScreenSize().width;
int height = Toolkit.getDefaultToolkit().getScreenSize().height;
this.setLocation(width / 2 - 233, height / 2 - 150);
setTitle("学生成绩管理系统");
header=new JPanel();
container=new JPanel();
footer=new JPanel();
this.add(header,BorderLayout.NORTH);
this.add(container,BorderLayout.CENTER);
this.add(footer,BorderLayout.SOUTH);
/*----------------顶端图片-----------------------------------*/
img=new ImageIcon("D:\\Workspaces\\CS模式\\studentGrade\\bg_new.jpg");
logo=new JLabel(img);
header.add(logo);
/*---------------输入数据------------------------------------*/
GridLayout gridLayout=new GridLayout(2,4);
container.setLayout(gridLayout);
gridLayout.setHgap(10);
gridLayout.setVgap(10);
username=new JLabel("用户名");
Font f1=new Font("宋体",Font.BOLD,18);
username.setFont(f1);
username.setHorizontalAlignment(SwingConstants.CENTER);
username_text=new JTextField();
password=new JLabel("密 码");
password.setHorizontalAlignment(SwingConstants.CENTER);
password_text=new JPasswordField();
container.add(username);
container.add(username_text);
container.add(password);
container.add(password_text);
/*---------------按钮---------------------------------------*/
FlowLayout flowLayout=new FlowLayout();
footer.setLayout(flowLayout);
submit=new JButton("确定");
exit=new JButton("退出");
footer.add(submit);
footer.add(exit);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new login();
}
}