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

📄 gui.java

📁 实现4个数的24点计算 也可输入4个1-9的数字
💻 JAVA
字号:
/**
 * @(#)GUI.java
 *
 *
 * @author 
 * @version 1.00 2007/4/24
 */
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class GUI extends JFrame implements ActionListener
{
	do24 test;//amend
	private JTextField jtf1,jtf2,jtf3,jtf4,jtf5;
	private JButton jbtOK;
//	private ImageIcon imageIcon[]=new ImageIcon[52];
	private double[] viewer=new double[4];
    public GUI() {
    	
		Container container=getContentPane();
		JPanel p1=new JPanel();
		p1.setLayout(new FlowLayout());
		p1.add(new JLabel("Number 1="));
		p1.add(jtf1=new JTextField(3));
		
		p1.add(new JLabel("Number 2="));
		p1.add(jtf2=new JTextField(3));
		
		p1.add(new JLabel("Number 3="));
		p1.add(jtf3=new JTextField(3));
		
		p1.add(new JLabel("Number 4="));
		p1.add(jtf4=new JTextField(3));
		
		jtf1.setEditable(false);
		jtf2.setEditable(false);
		jtf3.setEditable(false);
		jtf4.setEditable(false);
		
		JPanel p2=new JPanel();
		p2.setLayout(new FlowLayout());
		p2.add(jtf5=new JTextField(20));
		p2.add(jbtOK=new JButton("OK"));
		
		JMenuBar jmb=new JMenuBar();//菜单栏
		setJMenuBar(jmb);
		JMenu fileMenu=new JMenu("文件");
		fileMenu.setMnemonic('F');
		jmb.add(fileMenu);
				
		JMenuItem jmiNew,jmiExit;
		fileMenu.add(jmiNew=new JMenuItem("开始"));
		fileMenu.addSeparator();
		fileMenu.add(jmiExit=new JMenuItem("退出"));
		jmiNew.setMnemonic('N');
		jmiExit.setMnemonic('E');
		jmiNew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK));
		jmiExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,ActionEvent.CTRL_MASK));
		
		getContentPane().setLayout(new BorderLayout());
		getContentPane().add(p1,BorderLayout.CENTER);
		getContentPane().add(p2,BorderLayout.SOUTH);
		
		jbtOK.addActionListener(this);
		jmiNew.addActionListener(this);
		jmiExit.addActionListener(this);
	}
	
	public void actionPerformed(ActionEvent e)
	{
		String actionCommand= e.getActionCommand();
		if(e.getSource() instanceof JButton)
		{
		int flag=0;
		int temp=0;
		Calculator c=new Calculator();
		if(e.getSource()==jbtOK)
		{	
			String a=jtf5.getText();
			match m=new match();
			if(m.stringlegal(a,viewer)==false)
				JOptionPane.showMessageDialog(this,"Illegal number!please input again","Message",JOptionPane.INFORMATION_MESSAGE);
			else
			{
				c.exp=a;
			if(c.Run()==24)
				JOptionPane.showMessageDialog(this,"congratulation!","result",JOptionPane.INFORMATION_MESSAGE);
			else
				JOptionPane.showMessageDialog(this,"error!正确答案是:"+test.s,"result",JOptionPane.INFORMATION_MESSAGE);
			}
		}
	}

		else if(e.getSource() instanceof JMenuItem)
		{
			if("开始".equals(actionCommand))
			{	
				test=new do24();//amend
				Calculator c =new Calculator();
				c.Clear();
    			do
    			{	
    				for(int i=0;i<4;i++)
					{
						test.num[i]=(int)(Math.random()*9)+1;
						viewer[i]=test.num[i];
					}
    			}while(test.judge()==0);
    			jtf1.setText(String.valueOf((int)viewer[0]));
    			jtf2.setText(String.valueOf((int)viewer[1]));
    			jtf3.setText(String.valueOf((int)viewer[2]));
    			jtf4.setText(String.valueOf((int)viewer[3]));
			}
			else if("退出".equals(actionCommand))
			{
				System.exit(0);
			}
		}
	}
    public static void main(String[] args)
    {
		GUI frame=new GUI();	
    	frame.pack();
    	frame.setTitle("24点游戏 v1.0");
    	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	frame.setSize(500,200);
    	Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();
    	int screenWidth= screenSize.width;
    	int screenHeight=screenSize.height;
    	Dimension frameSize =frame.getSize();
    	int x=(screenWidth-frameSize.width)/2;
    	int y=(screenHeight-frameSize.height)/2;
    	
    	frame.setLocation(x,y);
    	frame.setVisible(true);
    }
    
}

⌨️ 快捷键说明

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