📄 swingwork2.java
字号:
/*
* Created on 2005-4-6
* 题目:
* 编程实现: 在屏幕上显示两个TextField1、 TextField2、一个List和一个Button,
* 当在TextField中输入姓名和E-mail后, 按Button将其保存在List中,注意List中的姓
* 名无重复。
*
* Window - Preferences - Java - Code Style - Code Templates
*/
/**
* Preferences - Java - Code Style - Code Templates
*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.List;
public class SwingWork2 extends JFrame {
private static final long serialVersionUID = 1L;
private DefaultListModel items = new DefaultListModel();
private JList list = new JList(items);
private TextField textField1 = new TextField(50);
private TextField textField2 = new TextField(50);
private JButton jb = new JButton("添加List项目");
boolean bool = true;
/*
* 设置一个数组链表,把所有的名字放在链表中。
* 当有名字重复的时候,就不向list中添加元素,否则添加元素。
*/
private List name = new ArrayList();
private void add(String s) {
name.add(s);
}
public SwingWork2() {
Container cp = getContentPane();
cp.setLayout(new FlowLayout());
// 添加监听器
jb.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 遍历链表,看看是否有名字相同的选项。
for (int k = 0; k < name.size(); k++) {
if ((textField1.getText()).equals((String) name.get(k)))
bool = false;
}
// 如果没有名字相同的项,则添加list元素
if (bool) {
items.add(0, "姓名: " + textField1.getText() + " | Email: "
+ textField2.getText());
add(textField1.getText());
// 清空textField
textField1.setText("");
textField2.setText("");
bool = true;
} else {
textField1.setText("");
textField2.setText("");
bool = true;
}
}
});
// 添加组件
cp.add(textField1);
cp.add(textField2);
cp.add(jb);
cp.add(list);
// 设置初始状态
this.setSize(450, 300);
this.setVisible(true);
}
public static void main(String[] args) {
new SwingWork2();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -