当前位置 : 主页 > 编程语言 > java >

《Java 核心技术 卷1》 笔记 第九章 Swing 用户界面组件(3)

来源:互联网 收集:自由互联 发布时间:2022-07-13
9.3 文本输入 JTextField 单行文本 JTextArea 多行文本 常用方法: getText() 获取文本 setText(String) 设置文本 isEditable() 是否可编辑修改文本 setEditable(boolean b) 设置是否可编辑文本 9.3.1 JTextField


9.3 文本输入

JTextField 单行文本

JTextArea 多行文本

常用方法:

getText() 获取文本

setText(String) 设置文本

isEditable() 是否可编辑修改文本

setEditable(boolean b) 设置是否可编辑文本

9.3.1 JTextField

setColumn(int);刷新容器,设置列数

Container.revalidate();//刷新容器,修改大小时需要

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Main {
public static void main(String[] args) {
Main solution = new Main();

EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
TextFrame f = new TextFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
});
}
}

class TextFrame extends JFrame{
public static final int W = 300;
public static final int H = 200;

public TextFrame(){
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screenSize = toolkit.getScreenSize();
setBounds(((int)screenSize.getWidth()-W)/2,((int)screenSize.getHeight()-H)/2,W,H);

add(new TextPanel());
}
}

class TextPanel extends JPanel implements ActionListener{
JButton b1;
JButton b2;
JTextField t;
public TextPanel(){
t = new JTextField(20);
t.setEditable(true);
add(t);
b1 = new JButton("启用");
b2 = new JButton("停用");
add(b1);
add(b2);
b1.addActionListener( this);
b2.addActionListener( this);
}

@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==b1){
t.setEditable(true);
}else if(e.getSource()==b2){
t.setEditable(false);
}
}
}

启用时可输入文字:

《Java 核心技术 卷1》 笔记 第九章 Swing 用户界面组件(3)_java

停用后不能输入:

《Java 核心技术 卷1》 笔记 第九章 Swing 用户界面组件(3)_idea_02

9.3.2 标签和标签组件

JTextField 前,往往需要文字标签进行说明

Jlabel 可以指定对齐方式,比如右对齐:

Jlabel label = new Jlabel("User name:",SwingConstants.RIGHT);

把上面例子改写一下TextPanel:

class TextPanel extends JPanel implements ActionListener{
JButton b1;
JButton b2;
JTextField t;
public TextPanel(){
JLabel label = new JLabel("姓名:",SwingConstants.RIGHT);
add(label);
t = new JTextField(20);
t.setEditable(true);
add(t);
b1 = new JButton("启用");
b2 = new JButton("停用");
add(b1);
add(b2);
b1.addActionListener( this);
b2.addActionListener( this);
}

@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==b1){
t.setEditable(true);
}else if(e.getSource()==b2){
t.setEditable(false);
}
}
}

《Java 核心技术 卷1》 笔记 第九章 Swing 用户界面组件(3)_java_03

  相关内容:选择 《Java核心技术 卷1》查找相关笔记

 喜欢的话,点个赞吧~!平时做题,以及笔记内容将更新到公众号。

关注公众号,互相学习:钰娘娘知识汇总

《Java 核心技术 卷1》 笔记 第九章 Swing 用户界面组件(3)_java_04

【本文来自:美国服务器 http://www.558idc.com/mg.html提供,感恩】
网友评论