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

📄 lucky.java

📁 小APPLET程序,使用JAVA中的对话框
💻 JAVA
字号:
import java.applet.*;
import java.awt.*;
import java.net.*;
import java.awt.event.*;

public class Lucky extends Applet implements ActionListener
{
	Panel pNorth=new Panel();
	PicPanel pCenter=new PicPanel();
	Panel pBottom=new Panel();
	TextField txField=new TextField(10);
	Label label=new Label("请输入你对商品价格的估计:");
	private int nPrice=1100;   /*定义私有变量商品的价格*/

	public Lucky()
	{
		super();
		this.setLayout(new BorderLayout());/*选择窗口的布局*/
		pNorth.add(label);
		pNorth.add(txField);
		add(pNorth,BorderLayout.NORTH);/*标签放在窗口的上方*/
		add(pCenter,BorderLayout.CENTER);//图片方在窗口的中央
		Button btStart=new Button("开始游戏");
		Button btOk=new Button("确定");
		Button btCancel=new Button("取消");
		btStart.setActionCommand("start");
		btStart.addActionListener(this);
		btOk.setActionCommand("ok");
		btOk.addActionListener(this);
		btCancel.setActionCommand("cancel");
		btCancel.addActionListener(this);
		pBottom.add(btStart);
		pBottom.add(btOk);
		pBottom.add(btCancel);          //开始按钮,确定按钮,取消按钮
		add(pBottom,BorderLayout.SOUTH);//放置在窗口的下方
		setBackground(Color.white);     //选定窗口的颜色
	}

	public void actionPerformed(ActionEvent evt)
	{
		if(evt.getActionCommand().equals("start"))
		{
			pCenter.initImg();
			label.setText("请输入你对N3100价格的估计:");
			pCenter.repaint();
		}
		else if(evt.getActionCommand().equals("ok"))
		{
			int guessPrice=0;
			try
			{
				guessPrice=Integer.parseInt(txField.getText().trim());
				String guess=comparePrice(guessPrice);
				new MsgDlg(guess);
			}
			catch(Exception e)
			{
				e.printStackTrace();
			}
		}
		else if(evt.getActionCommand().equals("cancel"))
		{
			txField.setText("");
		}
	}
	/**创建游戏的主界面,包括一个价格输入框和两个按钮当按下"确定"按钮时
	 * 程序根据设定的价格对用户输入的价格进行比较并弹出相应的结果!
	 */

	public String comparePrice(int guessPrice)
	{
		if(guessPrice==nPrice)
		{
			return"你猜对了,恭喜你!";
		}
		else if(guessPrice>nPrice)
		{
			return"你猜的价格过高,请重新猜!";
		}
		else if(guessPrice<nPrice)
		{
			return"你猜的价格过低,请重新猜!";
		}
		return"出错了!";
	}
	/**这是价格比较方法,当用户输入不同的价格时就有相应的提示
	 * 发送给用户.
	 */
}

class PicPanel extends Panel
{
	String fileName="0157.jpg";
	Image m_img;

	public void initImg()
	{
		URL url=null;
		try
		{
			url=Class.forName("Lucky").getResource("0157.jpg");
		}                       //引入一张图片
		catch(Exception e){}
		m_img=getToolkit().getImage(url);
		MediaTracker mt=new MediaTracker(this);
		mt.addImage(m_img,1);
		try
		{
			mt.wait();
			mt.checkAll();
		}
		catch(Exception e){}
	}

	public void paint(Graphics g) /*这个方法作用是画定图片显示框的大小*/
	{
		g.drawImage(m_img,120,30,150,160,this);
	}
}
/**定义一个PicPanel类它的主要作用是根据用户的请求调入一张图片
 */

class MsgDlg extends Frame implements ActionListener
{
	Label label=new Label();

	public MsgDlg(String strMsg)
	{
		super();
		setTitle("猜的结果");
		Panel p=new Panel();
		add(p);
		p.add(label);
		label.setText(strMsg);
		setSize(300,100);
		setLocation(100,200);
		Button btOk=new Button("确定");
		btOk.addActionListener(this);
		p.add(btOk);
		show();
	}

	public void actionPerformed(ActionEvent evt)
	{
		this.dispose();
	}
}
/**响应用户输入的弹出窗口,相当于一个消息框
 */

⌨️ 快捷键说明

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