Java里Swing的输入框练习代码(4)

文本标签(JLabel

  • 代码部分
package top.linksinke.test;

import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Font;

import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.plaf.LabelUI;

/**
 * JLabel 标签使用<br/>
 * create by LINKSINKE on 2020/2/28
 */
public class JLabelTest extends JFrame {
	public JLabelTest() {
		// 设置窗口的默认打开位置和大小
		this.setBounds(30, 30, 300, 300);
		// 设置close按钮的操作
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		Container ctainer = this.getContentPane();// 获取容器对象
		ctainer.setLayout(new FlowLayout());
		JLabel lb = new JLabel("标签文本内容");// 创建lb对象
		lb.setFont(new Font("楷体", Font.BOLD, 20));// 设置字体样式
		lb.setForeground(Color.RED);// 设置文本颜色
		lb.setBorder(BorderFactory.createLineBorder(Color.BLUE));// 设置边框
		lb.setIcon(new ImageIcon("src/java.jpg"));// 设置图片
		// 向容器中添加JLabel的实例对象lb
		ctainer.add(lb);
		// 设置窗口为显示状态,false为不显示,true为显示
		this.setVisible(true);
	}

	public static void main(String[] args) {
		JLabelTest labelObj = new JLabelTest();
	}
}
  • 代码效果图
    在这里插入图片描述

文本输入框(JTextField

  • 代码部分
package top.linksinke.test;

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

/**
 * JTextField 文本输入框使用<br/>
 * create by LINKSINKE on 2020/2/28
 */
public class JTextFieldTest extends JFrame {

	public JTextFieldTest() {
		// 设置窗口打开的默认位置和大小
		this.setBounds(20, 20, 200, 200);
		// 设置close按钮的操作
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// 获取容器对象
		Container ctainer = this.getContentPane();
		// 设置布局方式为流式布局
		ctainer.setLayout(new FlowLayout());

		// 创建jtxt实例对象
		final JTextField jtxt = new JTextField();
		// 设置文本框长度为10个字符
		jtxt.setColumns(10);

		// 创建一个jbtn实例对象
		JButton jbtn = new JButton("获取文本框中的内容");
		// 给jbtn绑定一个监听事件
		/**
		 * 该事件的作用:<br/>
		 * 1.点击窗口上的按钮为"获取文本框中的内容",<br/>
		 * 2.会输出文本框中的文本内容,并且输出到控制台窗口中,<br/>
		 * 3.再重新清空文本框中的值,此过程会导致文本框失去焦点,需要通过requestFocus方法来重新设置焦点
		 */
		jbtn.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				System.out.println(jtxt.getText());
				jtxt.setText("");// 清空文本框的内容
				jtxt.requestFocus();// 重新获取焦点
			}
		});

		// 向容器中分别添加文本框jtxt和jbtn
		ctainer.add(jtxt);
		ctainer.add(jbtn);

		// 设置窗口是否显示(true为显示,false为不显示)
		this.setVisible(true);
	}

	public static void main(String args[]) {
		JTextFieldTest frame = new JTextFieldTest();
	}
}
  • 代码效果图
    在这里插入图片描述

密码输入框(JPasswordField

  • 代码部分
package top.linksinke.test;

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JPasswordField;

/**
 * JPasswordField 密码框的使用<br/>
 * create by LINKSINKE on 2020/2/28
 */
public class JPasswordFieldTest extends JFrame {
	public JPasswordFieldTest() {
		// 设置默认打开窗口的位置 和大小
		this.setBounds(20, 20, 200, 200);
		// 设置close按钮的操作(关闭窗口并停止程序运行)
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// 获取容器对象
		Container ctainer = this.getContentPane();
		ctainer.setLayout(new FlowLayout());
		// 创建jpwd实例对象
		final JPasswordField jpwd = new JPasswordField();
		// 设置密码框的长度
		jpwd.setColumns(10);
		// 设置密码框默认显示的字符
		jpwd.setEchoChar('\u2602');
		// 监听密码框的事件,这个事件触发是在按下回车键(Enter)后
		/**
		 * 给密码框添加监听事件,当按下回车键(Enter)后,将密码框中的值给输出到控制台上面
		 */
		jpwd.addActionListener(new ActionListener() {

			@Override
			public void actionPerformed(ActionEvent e) {
				char[] ch = jpwd.getPassword();
				System.out.println(new String(ch));
			}
		});

		// 向容器中添加jpwd
		ctainer.add(jpwd);

		// 设置窗口是否显示,可选值true|false,其中true表示显示窗口,false表示不显示窗口
		this.setVisible(true);
	}

	public static void main(String args[]) {
		JFrame jframe = new JPasswordFieldTest();
	}
}

  • 代码效果图
    在这里插入图片描述
发布了68 篇原创文章 · 获赞 12 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_29001539/article/details/104558927