java day2一个模拟双色球的代码
package day2; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Panel; import java.awt.event.MouseAdapter; import java.util.Random; import java.awt.event.MouseEvent; import javax.swing.JFrame; import javax.swing.JPanel; //继承 public class day2_c extends JPanel{ /** * */ private static final long serialVersionUID = 1L; public int[] Rednumber = {0,0,0,0,0,0,0}; public int[] checknum = new int[7]; Random mrRandom = new Random(); boolean Ischange = false; boolean state = false; public int counterrun = -1; public static void main (String args[]) { JFrame myFrame = new JFrame("NEF"); myFrame.setSize(1200, 650); myFrame.setDefaultCloseOperation(2); myFrame.setLocationRelativeTo(null); myFrame.setResizable(false); day2_c mypanel = new day2_c(); myFrame.add(mypanel); myFrame.setVisible(true); mypanel.changeN(); } public void paint(Graphics myg) { //画点击口 myg.setColor(Color.orange); myg.fillRect(550, 50, 100, 50); myg.setFont(new Font("楷体", 1,25)); myg.setColor(Color.BLACK); myg.drawString("点击开始", 547, 80); //画红球 int x_axis = 100; int y_axis = 250; myg.setColor(Color.red); for(int i = 0; i < 6; i++) { myg.fillOval(x_axis, y_axis, 100, 100); x_axis += 150; } myg.setColor(Color.blue); myg.fillOval(1000, 250, 100, 100); //是否change if(Ischange) { //画数字 int T_axisX = 125; int T_axisY = 320; int nud = 0; for(int i = counterrun; i < 6; i++) { nud = mrRandom.nextInt(33) + 1; for(int h = 0; h < i; h++) { if(nud == Rednumber[i]) { i--; break; } } Rednumber[i] = nud; } Rednumber[6] = mrRandom.nextInt(16) + 1; myg.setFont(new Font("", 1, 45)); myg.setColor(Color.GREEN); for(int i = 0;i < 7;i++) { if(Rednumber[i] % 10 == 0) { myg.drawString(" " + Rednumber[i],T_axisX , T_axisY); } else{ myg.drawString("" + Rednumber[i],T_axisX , T_axisY); } T_axisX += 150; } //myg.drawString(""+Rednumber[6], T_axisX, T_axisY); } } public void changeN() { MouseAdapter MA = new MouseAdapter() { public void mouseClicked(MouseEvent e) { int x = e.getX(); int y = e.getY(); if(x > 550 & x < 650 & y > 50 & y < 100 ) { Ischange = true; //repaint(); } } }; addMouseListener(MA); //鼠标时间的监听实际上是和main函数main线程分开的 //监听是简单事件,无法执行循环 for(int i = 0; i < 140; i++) { try{ Thread.sleep(50); } catch(Exception e3){ e3.printStackTrace(); } if(i % 20 == 0) { counterrun ++; } repaint(); } counterrun = 0; } }
程序有bug,目前还没有找到好的解决办法,有兴趣的可以留言,我发老师的代码,实现的过程不太一样
本来还有一个小功能是排序的,但是太简单了,就没写,,,,一直和bug斗争,就一冒泡排序。
有人愿意帮我解决一下这程序的bug不。。。
java day2一个模拟双色球的代码的更多相关文章
- 基于Java SE的模拟双色球彩票系统
1.双色球规则: ①双色球分为红球和蓝球,红球选择的范围为1-33,而且红球选择6个数字:蓝球选择的范围为1-16,而且只能选择1个数字. ②选择方式为随机选择号码和手动输入选择号码. ③生成号码的顺 ...
- 用C#实现模拟双色球中奖程序 控制台应用程序
前言 这是我在大一第一学期C#的课程设计,要求编写一个模拟双色球彩票的控制台应用程序,用以实现简单的模拟选购彩票. 一.双色球购号号码生成: 1.系统购号:通过"随机数"产生双色球 ...
- Mockito:一个强大的用于Java开发的模拟测试框架
https://blog.csdn.net/zhoudaxia/article/details/33056093 介绍 本文将介绍模拟测试框架Mockito的一些基础概念, 介绍该框架的优点,讲解应用 ...
- java 添加一个线程、创建响应的用户界面 。 演示示例代码
javajava 添加一个线程.创建响应的用户界面 . 演示示例代码 来自thinking in java 4 21章 部分的代码 夹21.2.11 thinking in java 4免费下载: ...
- Java模拟双色球彩票
package practice1; import java.util.Random; import java.util.Scanner; public class Test3 { /** * * 模 ...
- Java判断一个字符是否是数字的几种方法的代码
在工作期间,将写内容过程经常用到的一些内容段做个记录,下面内容是关于Java判断一个字符是否是数字的几种方法的内容,希望能对码农们有好处. public class Test{ public stat ...
- 为什么用 Java:一个 Python 程序员告诉你
这篇文章专门给程序员写的,普通读者慎入.原作者:Kevin Sookocheff 译者:Celia Zhen,原文点击文末链接. 每当我告诉别人我一直在用Java工作时,大家的反应都是: “纳尼!Ja ...
- 学了编译原理能否用 Java 写一个编译器或解释器?
16 个回答 默认排序 RednaxelaFX JavaScript.编译原理.编程 等 7 个话题的优秀回答者 282 人赞同了该回答 能.我一开始学编译原理的时候就是用Java写了好多小编译器和 ...
- 用java实现一个简易编译器1-词法解析入门
本文对应代码下载地址为: http://download.csdn.net/detail/tyler_download/9435103 视频地址: http://v.youku.com/v_show/ ...
随机推荐
- Fiddler 4 抓包
Fiddler 4 Tools –> Fiddler Options HTTPS -> 勾选"CaptureHTTPS CONNECTs",同时勾选"Decr ...
- Linux系统下配置Tomcat
1.将下载好的tomcat文件拷贝至/usr/java文件夹中: cp apache-tomcat-7.0.72.tar.gz /usr/java 2.进入/usr/java文件夹: cd /usr/ ...
- 用SignalR实现实时查看WebAPI请求日志
实现的原理比较直接,定义一个MessageHandler记录WebAPI的请求记录,然后将这些请求日志推送到客户端,客户端就是一个查看日志的页面,实时将请求日志展示在页面中. 这个例子的目的是演示如何 ...
- 【Java】Annotation_学习笔记
Annotation 1.APT: 访问和处理Annotation的工具统称,即Annotation Process Tool. 2.java.lang下提供的五种基本Annotation: @Ove ...
- 原创:Equinox OSGi应用嵌入Jersey框架搭建REST服务
一.环境 eclipse版本:eclipse-luna 4.4 jre版本:1.8 二.Equinox OSGi应用嵌入Jersey框架搭建REST服务 1.新建插件工程HelloWebOSGI a. ...
- viewPager 的可滑动 Title
有三种方式: 1. 系统提供的title 缺点:标题在viewpager的滑动过程中也会滑动 实现:在ViewPager布局中添加 PagerTabStrip 或者是 PagerTitleStrip ...
- iOS开发 贝塞尔曲线
iOS开发 贝塞尔曲线UIBezierPath - 陌云 时间 2014-03-14 11:04:00 博客园-所有随笔区 原文 http://www.cnblogs.com/moyunmo/p/ ...
- ios 常用字符串的操作
//将NSData转化为NSString NSString* str = [[NSString alloc] initWithData:response encoding:NSUTF8S ...
- express+gulp构建项目(一)项目目录结构
express是基于nodejs平台的web框架,它可以让我们快速开发出web引用.而gulp是一种自动构建工具,非常强大,有了它,能帮我们完成很多繁琐的工作,例如,静态文件的压缩,为静态文件加上哈希 ...
- LabVIEW之生产者/消费者模式--队列操作 彭会锋
LabVIEW之生产者/消费者模式--队列操作 彭会锋 本文章主要是对学习LabVIEW之生产者/消费者模式的学习笔记,其中涉及到同步控制技术-队列.事件.状态机.生产者-消费者模式,这几种技术在在本 ...