java猜字母小游戏代码(图形界面)_第1页
java猜字母小游戏代码(图形界面)_第2页
java猜字母小游戏代码(图形界面)_第3页
java猜字母小游戏代码(图形界面)_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

package com.tedu.class_6_task; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Arrays; import java.util.Random; import java.util.Scanner; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; /* * 猜字母游戏 * 1.需要用户输入字母 5- * 2.系统随机生成 5 * 3.判定用户猜对几个字母, 并且有几个位置也是正确的 * 4.-进入游戏 退出游戏 * author * */ public class Guess extends JFrame private JFrame jf,jf1;/两个框架,一个是游戏开始输入字母时的,一个是显示结果的 private JPanel jp1,jp2,jp3,jp4;/四个面板,前两个是第一个框架上的 ,后两个是第二个上 的 private static JTextField jtf1;/文本框, 接受输入的字母 private JLabel jl1,jl2,jl3,jl4;/四个显示框,(显示说明性文字) private JButton jb1,jb2;/两个按钮,一个是输入字母后的确定按钮,一个是取消按钮 public Guess() jf=new JFrame(); jp1=new JPanel(); jp2=new JPanel(); jtf1=new JTextField(5);/构建指定列数的文本框 jl1=new JLabel(“输入 5 个大写英文字母“); jl4=new JLabel(); jb1=new JButton(“确定“); jb2=new JButton(“取消“); jp1.add(jl1); jp1.add(jtf1); jp2.add(jb1); jp2.add(jb2); jf.add(jp1); jf.add(jp2); jf.setLayout(new GridLayout(0,1);/网格布局,为不限行但为一列 jf.setTitle(“猜字母小游戏 “); jf.setSize(300,300); jf.setLocationRelativeTo(null);/设置窗口置于屏幕的中央 jf.setResizable(true);/位 TRUE 时可以改变大小 jf.setVisible(true);/显示出来 jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/在关闭的时候在后台关闭 public void myEvent() /让按钮具备关闭窗口的功能 jb2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) System.out.println(“按钮执行关闭窗口的功能“); System.exit(0); ); jb1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) if(test_text() String a=jtf1.getText(); char a1=a.toCharArray(); jf.setVisible(false); jf1=new JFrame(); jp3=new JPanel(); jp4=new JPanel(); char b=getChar(); jl2=new JLabel(“系统生成的字母“+Arrays.toString(b); jl3=new JLabel(“结果为“+compare(a1,b); jp3.add(jl2); jp4.add(jl3); jf1.add(jp3); jf1.add(jp4); jf1.setLayout(new GridLayout(0,1); jf1.setVisible(true); jf1.setLocationRelativeTo(null); jf1.setSize(300,300); jf1.setTitle(“猜字母小游戏“); jf1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ); public boolean test_text() int j=0; if(jtf1.getText().length()!=5) jl4.setText(“请输入 5 个字母,您输入的字母不为 5 个“); jf.add(jl4); jf.setVisible(true); /有漏洞:输入错误时 ,上一次的错误提醒没有消失,还在那里 /将 jl4 转到构造器里面 new 就没有这种漏洞 /System.out.println(“请输入 5 个字母,您输入的字母不为 5 个“); return false; else for(int i=0;i=A if(j=jtf1.getText().length() return true; else jl4.setText(“您输入的字母有不在随机生成的字母范围内 ,请重输入“); jf.add(jl4); jf.setVisible(true); / System.out.println(“您输入的字母有不在随机生成的字母范围内,请重输入 “); return false; public static void main(String args) Guess g=new Guess(); g.myEvent(); public static char getChar() char g=A,B,C,D,E; /F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z Random r=new Random(); char g1=new char5; boolean flag=new booleang.length; for(int i=0;ig1.length;i+) int index; do index=r.nextInt(5); while(flagindex);/是对可供选择的 5 个字母进行标记 ,已选的标记为 TRUE flagindex=true; g1i=gindex; return g1; public static String compare(char input,char ouput) int j=0; StringBuffer a=new StringBuffer()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论