- 浏览: 2046242 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (795)
- java (263)
- 聚类搜索引擎 (9)
- 经验之谈 (67)
- DSP (3)
- C++ (140)
- Linux (37)
- SNMP (6)
- Python (6)
- 数据库 (61)
- 网络 (20)
- 算法 (15)
- 设计模式 (4)
- 笔试题 (38)
- 散文 (35)
- 数据结构 (9)
- 银行知识 (0)
- 榜样 (9)
- Lucene (15)
- Heritrix (6)
- MetaSeeker (0)
- netbeans (12)
- php (3)
- 英语 (8)
- DB2 (0)
- java基础 (5)
- mongodb & hadoop (4)
- Javascript (7)
- Spring (4)
- ibatis & myibatis (1)
- velocity (1)
- 微服务 (0)
- paddle (1)
- 第三方 (0)
- 知识沉淀 (1)
- 建模 (0)
最新评论
-
0372:
标示对java很陌生!
中文乱码解决的4种方式 -
梦留心痕:
Java中\是转意字符, 可是你的这句话我没看懂,只要把得到的 ...
java中如何忽略字符串中的转义字符--转载 -
yanjianpengit:
[b][/b]
java为什么非静态内部类里面不能有静态成员 -
springdata-jpa:
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
eclipse 如何把java项目转成web项目 -
qq1130127172:
,非常好。
(转)SpringMVC 基于注解的Controller @RequestMapping @RequestParam..
import java.awt.BorderLayout; import java.awt.Panel; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; //import com.myemap.ui.Face; public class BallFrame{ JButton jbStart; JButton jbStop; JFrame jf; BallPanel bp; public BallFrame(){ jf = new JFrame("Ball Game"); jf.setLayout(new BorderLayout()); bp = new BallPanel(); Panel buttonPanel = new Panel(); jbStart = new JButton("开始"); jbStop = new JButton("停止"); buttonPanel.add(jbStart); buttonPanel.add(jbStop); jf.add(buttonPanel,BorderLayout.SOUTH); jf.add(bp,BorderLayout.CENTER); this.actionHandler(); this.showMi(); } private void showMi(){ jf.setSize(400,300); //jf.pack(); Toolkit tool = Toolkit.getDefaultToolkit(); double x =tool.getScreenSize().getWidth(); double y =tool.getScreenSize().getHeight(); jf.setLocation((int)(x-jf.getWidth())/2,(int)(y-jf.getHeight())/2); jf.setVisible(true); jf.setResizable(false); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } private void actionHandler(){ jbStart.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.out.println("start pressed"); /*1.创建小球 2.创建小球线程 3.加入小球*/ Ball ball = new Ball(); new BallThread(ball,bp.getBounds()).start(); bp.addBall(ball); } }); jbStop.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.out.println("stop pressed"); System.exit(0); } }); } public static void main(String[] args) { //Face.setFace(); new BallFrame(); } }
import java.awt.Color; import java.awt.Rectangle; import java.awt.Shape; import java.awt.geom.Ellipse2D; import java.util.Random; public class Ball { private double x,y; //初始点坐标 public static final int X_SIZE=20; //矩形宽度 public static final int Y_SIZE=20; //矩形长度 private int xMoveDis=10; //x移动距离 步长 private int yMoveDis=10; //y移动距离 步长 private Ellipse2D shape; private Color color; private static Random random; static { random = new Random(); } public Ball(){ color = new Color(random.nextInt(256),random.nextInt(256),random.nextInt(256)); xMoveDis = 5+random.nextInt(5)-2; yMoveDis = 5+random.nextInt(5)-2; } public Shape getShape() { //返回小球形状的方法 if(shape == null){ shape= new Ellipse2D.Double(x, y , X_SIZE,Y_SIZE); }else{ shape.setFrame(x, y , X_SIZE,Y_SIZE); } return shape; } public void move(Rectangle rect){ x+=xMoveDis; y+=yMoveDis; //判断边界 if(x < rect.getMinX()){ x = rect.getMinX(); xMoveDis = -xMoveDis; }else if((x+X_SIZE)>rect.getMaxX()){ x = rect.getMaxX()-X_SIZE; xMoveDis = -xMoveDis; } if(y < rect.getMinY()){ y = rect.getMinY(); yMoveDis = -yMoveDis; }else if((y+Y_SIZE)>rect.getMaxY()){ y = rect.getMaxY()-Y_SIZE; yMoveDis = -yMoveDis; } } public Color getColor() { return color; } public void setColor(Color color) { this.color = color; } }
import java.awt.Graphics; import java.awt.Graphics2D; import java.util.ArrayList; import java.util.List; import javax.swing.JPanel; public class BallPanel extends JPanel{ //负责画小球 private List<Ball> balls; public BallPanel(){ balls = new ArrayList<Ball>(); startPanitThread(); } public void addBall(Ball ball){ balls.add(ball); } //每隔50ms重绘一次 private void startPanitThread(){ new Thread(){ @Override public void run() { while(true) { repaint(); //重画 try { Thread.sleep(50); //50ms重绘一次 } catch (InterruptedException e) { e.printStackTrace(); } } } }.start(); } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 =(Graphics2D)g; for(Ball ball: balls){ g2.setColor(ball.getColor()); g2.fill(ball.getShape()); //绘画小球 } } }
import java.awt.Rectangle; import java.util.List; public class BallThread extends Thread{ //只负责移动 private Ball ball; private Rectangle rect; public BallThread(Ball ball,Rectangle rect){ this.ball = ball; this.rect=rect; } @Override public void run(){ int count = 0; while(count<10000) { ball.move(rect); try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } count++; } } }
(1)框架类 界面、开始按钮(创建小球、开启线程)、暂停按钮的监听(退出系统)
(2)面板类 保存小球的列表、每隔50ms绘画小球、绘画小球
(3)小球类 小球自身的设定,小球的移动。
(4)线程类 调用小球的移动。
所谓的线程,就是为了并发执行。线程是客户端调用。
发表评论
-
流式计算
2022-02-07 14:31 279private void postHandle(List& ... -
消息队列使用的四种场景介绍
2018-08-09 16:34 2471以下介绍消息队列在实际应用中常用的使用场 ... -
设计模式
2018-04-11 16:49 9801.桥梁模式,将抽象部分与实现部分隔离开,抽象部分持有实现 ... -
Spring boot web可以访问Service和Mapper层
2018-03-26 16:42 2861Spring boot的web层可以访问Service层,然 ... -
FreeMarker的基础语法使用 && 心得和技巧
2018-01-10 10:03 2053FreeMarker是一个模板引 ... -
webService----wss4j+cxf实现WS-Security(基于UsernameToken)
2017-10-23 18:58 1554分享一下wss4j+cxf基于UsernameToken的安 ... -
Spring MVC之LocaleResolver(解析用户区域)
2017-09-23 15:55 2517为了让web应用程序支持国际化,必须识别每个用户的首选区域, ... -
(转)java泛型
2016-11-12 20:29 1646http://www.cnblogs.com/lwbqqyu ... -
java中如何忽略字符串中的转义字符--转载
2016-06-28 16:42 9899原文地址:http://my ... -
(转)关于JAP FetchType.LAZY(hibernate实现)的理解 .
2016-04-27 15:22 5104JPA定义实体之间的关系有如下几种: @OneToOne ... -
(转)hibernate annotation注解方式来处理映射关系
2016-04-26 16:52 1836http://www.cnblogs.com/xiao ... -
代码片段,导出的文件头
2015-11-18 20:34 1600public static void setDownload ... -
(转)为什么要两次调用encodeURI来解决乱码问题
2015-08-03 20:19 2481地址:http://blog.csdn.net/howla ... -
杀死进程
2015-07-21 14:54 1285sudo lsof -i :9000 COMMAND P ... -
批处理batch,执行多个SQL语句
2015-07-15 19:21 10609批处理batch,执行多个SQL语句。 ... -
中文乱码解决的4种方式
2015-07-03 14:20 2627目前收集到4中方法,中文传参一documentPath为例: ... -
GET请求的中文乱码问题及处理意义
2015-07-03 13:47 6631首先看一段乱码的程序 ... -
java.ByteArrayInputStream与ByteArrayOutputStream再次理解
2015-03-16 17:59 3235第一次看到ByteArrayOutputStream的时 ... -
(转)SpringMVC 基于注解的Controller @RequestMapping @RequestParam..
2014-07-28 17:42 2272概述 继 Spring 2.0 对 Spring MVC ... -
java中序列化的serialVersionUID解释
2014-07-25 09:26 1883serialVersionUID: 字面意思上是序列化的版本号 ...
相关推荐
crystal-ball-模拟基础教程, 有案例。适合新手看。 在读完本资源后,你应该能够: ...6. 利用Crystal Ball程序辨识出符合历史数据的连续分配。 7. 利用Crystal Ball的特色来产生一些帮助决策的决策表和趋势图。
用Rust编写的Magic 8 Ball程序 :pool_8_ball: 嘿,GitHub! 这是我与Rust的第一个项目 :crab: ! 到目前为止,我一直爱着这种语言,迫不及待地想继续前进,经历这一惊人的旅程! 如果您对我有任何反馈或建议,我很...
Java_Ball程序是一个基于Java编程语言的简单游戏项目,它实现了小球的碰撞效果。这个程序的核心在于两个关键类:一个是用于图形绘制的类,另一个是处理小球运动和碰撞逻辑的类。在这个项目中,开发者运用了Java的...
这是Magic8Ball程序的开始,尽管尚无法使用。 通过以下方式进行更改: 通过将字符串存储在问题变量中来向Magic8Ball询问问题 您的8个球至少要添加五个答案,才能提供给String []答案。 请记住将每个格式设置为字符...
这是Crystal Ball的主要安装程序,适用于64位操作系统。双击此文件将启动安装流程,用户需要按照提示逐步操作,包括接受许可协议、选择安装路径、配置启动选项等。安装过程中需确保系统满足必要的硬件和软件需求,如...
同时,使用Flash的内置调试器或者浏览器的开发者工具,可以帮助找出并修复程序中的错误。 通过学习和模仿这个ball游戏,你可以深入了解Flash的各个核心特性,包括ActionScript编程、图形设计、事件处理和物理模拟。...
3. **dotnetfx.exe**:这是一个.NET Framework的安装程序。由于ManagedFlexLM.dll的提及,我们知道 Crystal Ball可能依赖.NET Framework运行,因此这个文件可能是为了确保系统具备运行所需环境。 4. **NDP1.1sp1-KB...
在提供的压缩文件中,"setup.exe"是安装程序,用于在用户的计算机上部署Crystal Ball;"README.htm"通常包含软件的安装指南和注意事项;"License Key Request Process.html"是许可证密钥请求过程的详细步骤,用户...
压缩包中的"climbing.exe"文件很可能是游戏的可执行程序,玩家下载后可以直接运行体验游戏。需要注意的是,为了确保安全,下载任何未知来源的exe文件前,都应进行病毒扫描,以避免潜在的安全风险。 总的来说,...
2. **crystalballsetup-x64.exe**:这是64位系统的Crystal Ball安装程序,用户可以通过运行这个文件来安装软件,享受其带来的所有功能。 3. **README.htm**:这是一个常见的文件,通常包含软件的使用说明、注意事项...
“Magic 8 Ball”程序的主要功能是根据用户的输入生成预设的一系列回答之一,通常这些回答包括“是”、“否”、“可能”等不确定或幽默的回复。以下是你可能会在`magic8ball.m`文件中看到的代码结构和知识点: 1. *...
"balln3t_rn8302b"可能是开发人员或团队的名称,他们可能已经为RN8302B芯片开发了一套特定的库函数或应用程序。这个名称下的程序可能包含了RN8302B的SPI通信示例代码、配置文件、驱动程序等,对于学习和参考RN8302B...
2. 主程序类:设置舞台,创建Ball实例,添加ENTER_FRAME事件监听器,以及更新和检查碰撞。 3. 可能还有其他辅助类或函数,如用于碰撞检测的函数。 五、实际应用 这样的示例项目对于学习AS3.0的物理模拟和游戏开发...
Crystal Ball-11130.000-64bit是该软件的一个64位版本,通常包含安装程序、用户手册、帮助文档以及必要的库文件。在下载和安装时,确保你的操作系统支持64位应用程序,并遵循安装指南进行操作。安装完成后,用户...
球杆系统(Ball&beam)设备是学习和研究控制理论的重要平台之一,许多学者在控制理论中的研究都通过球杆系统进行验证,这是因为自身具有一些很重要的性质,例如非线性特性、开环不稳定性等,这类复杂控制对象难以用...
1. `crystalballsetup-x64.exe` 是 Crystal Ball 的安装程序,用于在64位操作系统上安装该软件。双击运行此文件,将引导用户完成安装步骤,包括接受许可协议、选择安装路径等。 2. `README.htm` 文件通常包含了关于...
首先,核心组件"crystalballsetup.exe"是Crystal Ball的安装程序,用户可以通过运行此文件在32位版本的Excel上安装该插件。安装过程简单便捷,只需按照向导指示操作即可,使Excel瞬间具备高级的建模和模拟能力。 ...
《Ball - J2ME消球小游戏》是一款基于Java 2 Micro Edition (J2ME)平台开发的休闲益智游戏。J2ME是Java技术的一个重要分支,主要用于移动设备和嵌入式系统的应用开发,如手机、智能手表和电视等。这款小游戏通过简单...
"Ball Beam System"是一个独特的工程领域中的概念,它涉及到力学、控制理论以及计算机编程等多个方面的知识。这个系统通常被用于研究动态平衡、控制系统设计以及机械结构的稳定性等问题。在这个程序中,我们可能看到...
在IT行业中,游戏开发是一项非常有趣的任务,尤其对于初学者来说,通过编写简单的游戏程序可以深入理解编程原理和逻辑控制。本项目名为"ball_moving",它是一个使用C语言编写的迷你小球游戏,旨在实现小球的移动、...