⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usergui.java

📁 包的运用
💻 JAVA
字号:
package cha7;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class UserGUI  	implements ActionListener  //实现监视器
{	private CalcEngine calc;
	private JFrame frame;
	private JTextField display;
	private JLabel status;

	/**构造方法*/
	public UserGUI(CalcEngine engine)
	{   calc = engine;
		makeFrame();
		frame.setVisible(true);
	}

	/**使界面可见*/
    public void setVisible(boolean visible)
	{  frame.setVisible(visible);
	}
	/* 布局界面*/
	private void makeFrame()
	{   frame = new JFrame(calc.getTitle());
		JPanel contentPane = (JPanel)frame.getContentPane();
		contentPane.setLayout(new BorderLayout(8, 8));
		contentPane.setBorder(new EmptyBorder( 10, 10,10,10));//修改20,观察窗口
		display = new JTextField();
		contentPane.add(display, BorderLayout.NORTH);
		JPanel buttonPanel = new JPanel(new GridLayout(0, 4));
			addButton(buttonPanel, "7");
			addButton(buttonPanel, "8");
			addButton(buttonPanel, "9");
			addButton(buttonPanel, "C");
			addButton(buttonPanel, "4");
			addButton(buttonPanel, "5");
			addButton(buttonPanel, "6");
			addButton(buttonPanel, "?");
			addButton(buttonPanel, "1");
			addButton(buttonPanel, "2");
			addButton(buttonPanel, "3");
			buttonPanel.add(new JLabel(" "));
			addButton(buttonPanel, "0");
			addButton(buttonPanel, "+");
			addButton(buttonPanel, "-");
		addButton(buttonPanel, "=");
			addButton(buttonPanel, "=");
		contentPane.add(buttonPanel, BorderLayout.CENTER);
		frame.pack();
	}

	/**加入按钮*/
	private void addButton(Container panel, String buttonText)
	{   JButton button = new JButton(buttonText);
		button.addActionListener(this);
		panel.add(button);
	}
	/* 处理界面的事件*/
	public void actionPerformed(ActionEvent event)
	{	String command = event.getActionCommand();
		if(command.equals("0") ||
		   command.equals("1") ||
		   command.equals("2") ||
		   command.equals("3") ||
		   command.equals("4") ||
		   command.equals("5") ||
		   command.equals("6") ||
		   command.equals("7") ||
		   command.equals("8") ||
		   command.equals("9"))
		{	int number = Integer.parseInt(command);
			calc.numberPressed(number);
		}
		else if(command.equals("+"))
			calc.plus();
		else if(command.equals("-"))
			calc.minus();
		else if(command.equals("="))
			calc.equals();
		else if(command.equals("C"))
			calc.clear();
		    redisplay();
	}
	/*显示计算器当前值*/
	private void redisplay()
	{  display.setText("" + calc.getDisplayValue());
	}
  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -