m0_59759126 2021-06-28 21:16 采纳率: 100%
浏览 26
已采纳

求在按下第四个按钮后能弹出一段文字的代码

package guess;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class guess {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		DrawFrame frame=new DrawFrame();
	    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	    frame.setVisible(true);
	}
}

class DrawFrame extends JFrame
{
	private static int count=0;//猜测次数
	private int rightNumber;//随机产生的供猜测的数字
	private JTextField num;//输入的数字
	private JLabel text1;//添加帮助兼提示
	private JLabel tip;//猜测次数提示
	private JPanel panel;//中心输入框部分面板
	private JLabel result;//猜测结果提示
	private JButton button1=new JButton("确认");
	private JButton button2=new JButton("重新开始");
	private JButton button3=new JButton("退出");
	private JButton button4=new JButton("帮助兼提示");
	
	public DrawFrame()
	{
		text1=new JLabel("撒");
		setBounds(500,200,400,200);
		setTitle("一个猜数游戏");
		rightNumber=(int)(Math.random()*1000);
		
		//添加顶部次数提示
		tip=new JLabel("你已经猜了"+count+"次",JLabel.LEFT);
		
		//添加中心输入框部分
		panel = new JPanel();
		JLabel input=new JLabel("输入猜测的数");
		panel.add(input);
		num=new JTextField(20);
		panel.add(num);
		result=new JLabel();//显示猜测结果
		panel.add(result);
		
		//添加底部按钮
		JPanel buttons= new JPanel();
		//按钮的监听器,有两个类,确认按钮一个类,重新开始和退出一个类
		ActionListener listener1=new ComfirmListener();
		button1.addActionListener(listener1);
		ActionListener listener2=new OtherListener2();
		button2.addActionListener(listener2);
		button3.addActionListener(listener2);
		//将按钮添加到panel中
		buttons.add(button1);
		buttons.add(button2);
		buttons.add(button3);
		buttons.add(button4);
		
		//将各部分添加到框架中,用了默认的BorderLayout布局
		add(tip,"North");
		add(panel,"Center");
		add(buttons,"South");
	}
	
	//确认按钮的监听器类
	class ComfirmListener implements ActionListener
	{
		public void actionPerformed(ActionEvent event)
		{
			//猜测正确
			if(Integer.parseInt(num.getText())==rightNumber)
			{
				//设置文本框不可编辑
				num.setEditable(false);
				
				//提示猜测次数+1
				tip.setText("你已经猜了"+(++count)+"次");
				
				//调整背景色为默认背景色
				Color defaultColor = getBackground();
				panel.setBackground(defaultColor);
				
				//显示猜测结果
				panel.setBackground(Color.green);
				result.setText("恭喜你猜对啦!!");
			}
			//小于
			else if(Integer.parseInt(num.getText())<rightNumber)
			{
				panel.setBackground(Color.red);
				tip.setText("你已经猜了"+(++count)+"次");
				result.setText("此次结果为:太小");
			}
			else
			{
				panel.setBackground(Color.red);
				tip.setText("你已经猜了"+(++count)+"次");
				result.setText("此次结果为:太大");
			}
		}
	}
	
	//重新开始和退出按钮以及帮助的监听器
	class OtherListener2 implements ActionListener
	{
		public void actionPerformed(ActionEvent event)
		{
			//重新开始
			if(event.getSource()==button2)
			{
				//清除文本框内容
				num.setText("");
				
				//重新选一个供猜测数字
				rightNumber=(int)(Math.random()*1000);
						
				//调整背景色为默认背景色
				Color defaultColor = getBackground();
				panel.setBackground(defaultColor);
				
				//猜测次数增加
				count=count++;
				tip.setText("你已经猜了"+count+"次");
				
			}
			else if(event.getSource()==button4) {
				/*JLabel text1 = new JLabel("2021");
				panel.add(text1);
				setVisible(true);*/
				JOptionPane.showMessageDialog(null, "登录成功", "登录提示", JOptionPane.INFORMATION_MESSAGE);
				
			}
			
			//退出则关闭窗口
			else
			{
				setVisible(false);
			}
			
		}
		

	}

}
  • 写回答

3条回答 默认 最新

  • CSDN专家-Fay 2021-06-28 21:18
    关注

    使用弹出框就可以了,监听按钮,运行这段代码即可弹出

    JOptionPane.showMessageDialog(null, "账号或密码错误,请检查!");
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥50 opencv4nodejs 如何安装
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument
  • ¥15 nginx反向代理获取ip,java获取真实ip
  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥15 复杂网络,变滞后传递熵,FDA