14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?

常用基本控件

javax.swing.JButton

在图形界面程序中,按钮可能是使用量最大的控件之一,javax.swing包中JButton类就是用来创建按钮的。如表1所示,为JButton常用的构造方法。

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?_第1张图片

JButton中还提供了很多设置按钮属性的方法,如设置按钮上的文本、按钮等,如表2所示。

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?_第2张图片

javax.swing.JLabel

JLabel控件是最简单的Swing组件之一,用于在窗体上显示标签, JLabel既可以显示文本,也可以显示图像。如表3所示,为JLabel常用的构造方法。

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?_第3张图片

注意:

JLabel只能用于显示文本和图标信息,用户不能对其进行修改。


javax.swing.JTextField

JTextField 也是一个轻量级控件,它允许用户编辑单行文本。如表5所示,为JTextField常用的构造方法。

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?_第4张图片

JTextField(String   text, int columns)

创建一个指定初始化文本和列数的文本框

注意:

JTextField(int   columns)方法在使用流式布局时才有效果。

JTextField常用的方法如表6所示。

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?_第5张图片

javax.swing.JPasswordField

JPasswordField 是一个轻量级组件,允许编辑单行文本,其视图指示键入内容,但不显示原始字符。它是一个单行的密码框控件,具体使用方式和JTextField大致一样,所以不再赘述。

现在我们运用上面提到的控件实现一个登陆窗口,效果如下:

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?_第6张图片
1 登录窗口效果图


【示例1】使用控件实现登录窗口

packagecn.sxt.views.testlogin;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JPanel;

importjavax.swing.JPasswordField;

importjavax.swing.JTextField;

publicclassLoginFrameextendsJFrame {

//容器

privateJPanelpnlMain;

//标签控件

privateJLabellblTitle;

privateJLabellblUserName;

privateJLabellblUserPwd;

//输入用户名的文本框控件

privateJTextFieldtxtUserName;

//输入密码的密码框控件

privateJPasswordFieldpwdUserPwd;

//登录和退出按钮控件

privateJButtonbtnLogin;

privateJButtonbtnQuit;

publicLoginFrame() {

//实例化容器和各种控件

pnlMain=newJPanel(null);

lblTitle=newJLabel("用户登录");

lblUserName=newJLabel("用户姓名:");

lblUserPwd=newJLabel("用户密码:");

txtUserName=newJTextField();

pwdUserPwd=newJPasswordField();

btnLogin=newJButton("登录");

btnQuit=newJButton("退出");

init();

}

/**该方法对窗口做初始化操作*/

privatevoidinit() {

//设置窗口的各个属性

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setTitle("登录窗口");

this.setSize(300, 220);

this.setResizable(false);

/*设置各个控件的位置和坐标

*   setBounds()的前两个参数为控件的左上角坐标,后两个参数为控件的宽和高

*/

lblTitle.setBounds(100, 10, 100, 30);

lblUserName.setBounds(20, 60, 75, 25);

lblUserPwd.setBounds(20, 100, 75, 25);

txtUserName.setBounds(100, 60, 120, 25);

pwdUserPwd.setBounds(100, 100, 120, 25);

btnLogin.setBounds(50, 140, 75, 25);

btnQuit.setBounds(150, 140, 75, 25);

//将所有控件压在容器上

pnlMain.add(lblTitle);

pnlMain.add(lblUserName);

pnlMain.add(lblUserPwd);

pnlMain.add(txtUserName);

pnlMain.add(pwdUserPwd);

pnlMain.add(btnLogin);

pnlMain.add(btnQuit);

//将容器添加到窗口上

this.add(pnlMain);

this.setVisible(true);

}

}



「全栈Java笔记」是一部能帮大家从零到一成长为全栈Java工程师系列笔记。笔者江湖人称 Mr. G,10年Java研发经验,曾在神州数码、航天院某所研发中心从事软件设计及研发工作,从小白逐渐做到工程师、高级工程师、架构师。精通Java平台软件开发,精通JAVAEE,熟悉各种流行开发框架。

笔记包含从浅入深的六大部分:

A-Java入门阶段

B-数据库从入门到精通

C-手刃移动前端和Web前端

D-J2EE从了解到实战

E-Java高级框架精解

F-Linux和Hadoop

你可能感兴趣的:(14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?)