[引言]
我们在学习Java编程的时候,如果需要开发客户端窗体类型的程序,可以使用JDK中的awt和swing库。本文开始小博老师就继续为大家演示Java窗体编程中的各类控件,今天主要讲解的是文本类型控件。
[步骤阅读一]标签控件JLabel
标签控件是Java窗体控件中最基本的一种控件,它一般仅仅显示提示文字或图片内容,而并不会与用户有任何的交互。标签控件JLabel的常用构造器重载有三种,分别是JLabel()、JLabel(String text)和JLabel(Icon icon),第一种是创建一个空的标签,一般后续事件才会在其中显示相应内容,第二种是创建一个带有默认文字信息的标签,一般用来做用户提示信息,第三种是创建一个显示图片的标签。我们先通过一个简单的案例来直观感受一下,核心代码如下:
publicclassControllerFrameextendsJFrame{
publicControllerFrame(){
super("博为峰教育");
setBounds(200, 100, 300, 300);
setLayout(null);
// 空内容标签
JLabellb1=newJLabel();
lb1.setBounds(5, 20, 200, 25);
add(lb1);
// 带默认提示文字标签
JLabellb2=newJLabel("全栈Java课程");
lb2.setBounds(5, 50, 200, 25);
add(lb2);
// 显示图片的标签
JLabellb3=newJLabel(newImageIcon("files/bwf_logo.png"));
lb3.setBounds(5, 80, 281, 75);
add(lb3);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
我们实例化窗体对象,并且运行后效果:
[步骤阅读二]文本框控件JTextField
文本框标签也是我们在Java窗体中经常使用的一种标签,它可以与用户进行交互,让用户输入文本类型的单行信息。我们通过一个简单案例来体验一下,核心代码如下:
publicclassControllerFrameextendsJFrame{
publicControllerFrame(){
super("博为峰教育");
setBounds(200, 100, 300, 300);
setLayout(null);
// 空内容 文本框控件
JTextFieldtxt1=newJTextField();
txt1.setBounds(5, 5, 200, 25);
add(txt1);
// 带有默认信息的文本框控件
JTextFieldtxt2=newJTextField("全栈Java课程");
txt2.setBounds(5, 35, 200, 25);
add(txt2);
// 设置文本框用户可编辑状态 true|false
txt2.setEditable(false);
// 设置文本框启用|禁用状态 true|false
txt2.setEnabled(true);
// 设置文本框背景颜色
txt2.setBackground(newColor(230, 255, 230));
// 设置文本框内字体颜色
txt2.setForeground(newColor(200,80,20));
// 设置文本框内文字水平对齐方式
txt2.setHorizontalAlignment( SwingConstants.RIGHT);
// 设置文本框与内部文字的填充物间距
txt2.setMargin(newInsets(2, 2, 2, 5));
// 设置文本框用户指针图标
txt2.setCursor(newCursor(Cursor.HAND_CURSOR));
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
我们实例化窗体对象,并且运行后效果:
[步骤阅读三]密码框控件JPasswordField
密码框控件也是Java窗体中运用频度较高的一种控件,其本质和文本框控件是一样的,只是它在用户界面的回显信息以掩码方式显示。我们通过一个简单的案例来体验一下,核心代码如下:
publicclassControllerFrameextendsJFrame{
publicControllerFrame(){
super("博为峰教育");
setBounds(200, 100, 300, 300);
setLayout(null);
// 空内容 密码框控件
JPasswordFieldtxt1=newJPasswordField();
txt1.setBounds(5, 5, 200, 25);
add(txt1);
// 带有默认信息的密码框控件
JPasswordFieldtxt2=newJPasswordField("全栈Java课程");
txt2.setBounds(5, 35, 200, 25);
add(txt2);
// 设置文本框用户可编辑状态 true|false
txt2.setEditable(false);
// 设置文本框启用|禁用状态 true|false
txt2.setEnabled(true);
// 设置文本框背景颜色
txt2.setBackground(newColor(230, 255, 230));
// 设置文本框内字体颜色
txt2.setForeground(newColor(200,80,20));
// 设置文本框内文字水平对齐方式
txt2.setHorizontalAlignment( SwingConstants.RIGHT);
// 设置文本框与内部文字的填充物间距
txt2.setMargin(newInsets(2, 2, 2, 5));
// 设置文本框用户指针图标
txt2.setCursor(newCursor(Cursor.HAND_CURSOR));
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
我们实例化窗体对象,并且运行后效果: