(1)输入一个整数,分别显示其百位、十位和个位数字。要求:整数文本框可编辑且能实现事件处理,当输入数据错误时,处理异常,弹出对话框,提示重新输入信息;其他文本行仅用于显示不可编辑。使用JAVA编写一个程序
时间: 2024-11-28 12:27:48 浏览: 5
在Java中,你可以使用Swing库来创建这个简单的用户界面,以下是程序的大致步骤:
1. 导入必要的Swing包:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.ParseException;
```
2. 创建主窗口并设置布局管理器:
```java
public class Main extends JFrame {
private JTextField inputField; // 整数文本框
private JLabel resultLabels[] = new JLabel[3]; // 百位、十位和个位标签
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Main window = new Main();
window.setVisible(true);
}
});
}
public Main() {
// 初始化UI组件...
}
}
```
3. 在`Main`类的构造函数中初始化UI组件,包括输入框和三个显示标签:
```java
public Main() {
setLayout(new BorderLayout());
JPanel inputPanel = new JPanel();
inputPanel.add(new JLabel("请输入一个整数:"));
inputField = new JTextField(3); // 设置最多允许3位数字输入
inputPanel.add(inputField);
for (int i = 0; i < 3; i++) {
resultLabels[i] = new JLabel("0");
add(resultLabels[i], BorderLayout.NORTH + (i * 2));
}
// 添加事件监听器,处理输入和错误
inputField.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
parseInput();
} catch (ParseException pe) {
JOptionPane.showMessageDialog(null, "输入无效,请重新输入.");
}
}
});
setSize(400, 150);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
```
4. 实现解析输入的功能`parseInput()`,这里我们假设输入是一个三位数:
```java
private void parseInput() throws ParseException {
String input = inputField.getText().trim();
if (!input.matches("\\d{3}")) {
throw new ParseException("", 0);
}
int number = Integer.parseInt(input);
resultLabels[0].setText(Integer.toString(number / 100));
resultLabels[1].setText(Integer.toString((number % 100) / 10));
resultLabels[2].setText(Integer.toString(number % 10));
}
```
5. 异常处理部分,如果输入不是三位数,会抛出`ParseException`,然后捕获并在适当的地方显示错误消息。
运行这个程序时,你会看到一个包含输入框和三个静态显示数字的简单窗口。用户输入整数后,系统将显示百位、十位和个位数字。
阅读全文