**实验要求:**编写一个Java程序,在程序中建立一个窗口,有三个文本框、两个按钮、一个图片框,单击“求和”按钮,能把第一个和第二个文本框的整数相加后结果显示在第三个文本框中;点击“Next”按钮,能显示另一幅图片,最后还可以正常关闭窗口。
我在此报告要求上再添加了些改进,首页在页面顶部添加了复制按钮,并且在左边的文本框中输入一串字符串,单击“复制”按钮即可将输入的内容复制到右边的文本框中。
对于"求和"的按钮,我将其进行改进,设计成了简易的计算器界面,并用事件处理机制来完成简单地加减乘除、以及开根号的功能。
需要注意的是,放到面板中的图片最好放在work-space中。
注释里有详解,直接上代码(新人第一次写可能有点乱,忘见谅):
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import java.awt.Font;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;
public class CalculatorDemo extends JFrame {
private JPanel contentPane;//面板
private JTextField TF_text;//要输入的内容
private JTextField TF_Copytext;//要复制的内容
private JButton Button_next;
private JTextField TF_display;
private String nowButton;//定义计算器中当显示的字符串
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
CalculatorDemo frame = new CalculatorDemo();
frame.setVisible(true);//设置窗口可见
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
//注册事件监听器的方法
public void addButton(String label,ActionListener listener,int x,int y)
{
JButton button = new JButton(label);
button.addActionListener(listener);
button.setFont(new Font("微软雅黑", Font.PLAIN, 18));//为按钮内的文字设置大小
button.setBounds(x, y, 57, 47);//x,y为按钮在窗口中所处的位置
contentPane.add(button);//将按钮添加到面板中
}
public void addButton2(String label,ActionListen