编写java程序1.要求在文本框中输入有关信息,单击“添加”按钮,在下面的多行文本域中显示输入的的信息(如姓名、性别、年龄、爱好); 2.单击“读取”按钮将文本文件中的信息显示到多行文本域中。 单击“保存”按钮将把多行文本域中的内容保存到文本文件中,并退出窗口。
时间: 2024-03-23 18:39:33 浏览: 61
1. 编写一个 Java 程序, 在程序中建立一个窗口, 有两个文本框和一个按钮, 单击按钮, 能把左边文本框中的内容复制到右边文本框中.
好的,这是一个简单的Java GUI程序,可以按照您的要求实现输入、显示、读取和保存功能。以下是一个基本的实现:
```java
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class InfoEditor extends JFrame implements ActionListener {
private JTextArea textArea;
private JTextField nameField, genderField, ageField, hobbyField;
public InfoEditor() {
super("信息编辑器");
// 创建输入框和标签
JPanel inputPanel = new JPanel(new GridLayout(4, 2));
inputPanel.add(new JLabel("姓名:"));
nameField = new JTextField(10);
inputPanel.add(nameField);
inputPanel.add(new JLabel("性别:"));
genderField = new JTextField(10);
inputPanel.add(genderField);
inputPanel.add(new JLabel("年龄:"));
ageField = new JTextField(10);
inputPanel.add(ageField);
inputPanel.add(new JLabel("爱好:"));
hobbyField = new JTextField(10);
inputPanel.add(hobbyField);
// 创建按钮
JButton addButton = new JButton("添加");
addButton.addActionListener(this);
JButton readButton = new JButton("读取");
readButton.addActionListener(this);
JButton saveButton = new JButton("保存");
saveButton.addActionListener(this);
// 创建文本框和滚动条
textArea = new JTextArea(10, 30);
JScrollPane scrollPane = new JScrollPane(textArea);
// 添加组件
Container contentPane = getContentPane();
contentPane.add(inputPanel, BorderLayout.NORTH);
contentPane.add(scrollPane, BorderLayout.CENTER);
contentPane.add(addButton, BorderLayout.WEST);
contentPane.add(readButton, BorderLayout.CENTER);
contentPane.add(saveButton, BorderLayout.EAST);
// 设置窗口属性
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("添加")) {
String name = nameField.getText();
String gender = genderField.getText();
String age = ageField.getText();
String hobby = hobbyField.getText();
String info = String.format("%s\t%s\t%s\t%s\n", name, gender, age, hobby);
textArea.append(info);
nameField.setText("");
genderField.setText("");
ageField.setText("");
hobbyField.setText("");
} else if (e.getActionCommand().equals("读取")) {
try {
BufferedReader reader = new BufferedReader(new FileReader("info.txt"));
String line;
while ((line = reader.readLine()) != null) {
textArea.append(line + "\n");
}
reader.close();
} catch (IOException ex) {
ex.printStackTrace();
}
} else if (e.getActionCommand().equals("保存")) {
try {
BufferedWriter writer = new BufferedWriter(new FileWriter("info.txt"));
writer.write(textArea.getText());
writer.close();
dispose();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
public static void main(String[] args) {
new InfoEditor();
}
}
```
这个程序创建了一个窗口,包括四个文本框和一个多行文本域。在输入框中输入信息后,单击“添加”按钮,程序会将信息添加到多行文本域中。单击“读取”按钮,程序会从文件中读取信息,并显示到多行文本域中。单击“保存”按钮,程序会将多行文本域中的内容保存到文件中,并退出窗口。
阅读全文