import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image; import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel; public class testStar { /**
* @param args
* 满天星星图
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame jf=new JFrame();
jf.setSize(800, 800);
jf.setBackground(Color.BLACK);
//jf.add(new testStar());
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
jf.add(new ShapesPanel());
jf.setTitle("满天星星"); /*public void paint(Graphics g){
GraphicsDemod myGrapics=new GraphicsDemod();
myGrapics.paintComponent(g);
}*/
}
}
class ShapesPanel extends JPanel{
public void paintComponent(Graphics g){
int placeX;
int placeY;
int size;//存放字体大小,星星是直接输出的*,用字体控制起大小
//画星星
for(int i=0;i<300;i++){
//Math是数学类,random()是Math类中的一个方法,random本身只产生(0~1)之间的小数,
//random()*10 意思是产生0~10之间的小数 ,
//int(random()*10)的意思是强制取整,把小数部分去掉只去整数部分,所以 就变成了 产生0~9之间的整数。
placeX=(int) (800*Math.random());
placeY=(int)(800*Math.random());
size=(int)(20*Math.random());
g.setColor(Color.white);
g.drawString("*", placeX, placeY);//在X,Y的位置处画上特定的符号*
}
//画月亮
placeX=(int) (750*Math.random());
g.fillOval(placeX, 100, 100, 100);//placeX,100是圆心坐标(确切说是椭圆的中心对称点)的x,y值,后面两个是两条半长轴的长度。
//filloval画的是椭圆,后面两个相等当然就是圆了
g.setColor(Color.black);
g.fillOval(placeX-20, 80, 100, 100);
//画地面
g.setColor(Color.white);
g.fillOval(-400, 710, 1000, 100); Image mImage=new ImageIcon("./images/gril.png").getImage();
g.drawImage(mImage, 80, 500, 300, 300, null); }
}

paint方法必须在JPanel中

程序结果图

java GUI画满天星的更多相关文章

  1. Java GUI 画点

    import java.awt.EventQueue; public class Paint { private JFrame frame; /** * Launch the application. ...

  2. Java GUI画圆。

    package ydj; import java.awt.*; import javax.swing.*; public class huayuan extends JFrame { public h ...

  3. Java GUI入门手册-AWT篇

    Java GUI入门手册: AWT是基本的GUI设计工具,重点学习其中的布局格式以及事件监听事件. 首先创建一个窗口,我们先分析Frame类中的方法: 通过上图,可以看出frame是由构造方法的重载: ...

  4. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  5. JAVA GUI

    JAVA GUI中的事件处理:   委托事件模型:事件源对象和监听器对象具有绑定关系   一个监听器可以绑定多个事件源 一个事件源也可以绑定多个监听器 监听器有各自监听的事件类型   设置容器的布局管 ...

  6. paip.java gui swt/jface 最佳实践

    paip.java gui swt/jface 最佳实践 1. 工具:Eclipse +jigloo4 1 2. 安装插件: 1 1. IMPORT swt lib 2 2. 新建立窗体 2 3. 运 ...

  7. 写在学习Java GUI之前

    Java GUI就是用Java语言开发桌面应用,而Java又有三个Java GUI库,分别为AWT,Swing和SWT/JFace. 现在要学的是Swing库. 后记:开发桌面应用,不止一种技术,现在 ...

  8. JAVA GUI 工具

    Java GUI图形界面开发工具   上大学那会儿比较主流的Java图形开发插件是:Visual Editor 和 SWT Designer, 不久又出了个Jigloo, 但去官网看了下发现这个东西也 ...

  9. [置顶] java Gui 键盘监听事件

    简单写一个java Gui键盘监听事件,实现的效果就是按下键盘控制台输出你按下的键.比如:按下A控制台就输出A 效果如图: 以下把实现的效果分为几个步骤: 1.新建一个窗体类继承窗体: 2.给这个窗体 ...

随机推荐

  1. ios-NSStringFromCGRect直接输出控件的frame

  2. mysql的binlog安全删除

    理论上,应该在配置文件/etc/my.cnf中加上binlog过期时间的配置项,expire_logs_days = 10 但是如果没有加这一项,随着产生越来越多的binlog,磁盘被吃掉了不少.可以 ...

  3. Notice: Undefined offset 的解决方法

    Notice: Undefined offset: 1 in D:\wwwroot\wr\askseo\404.php on line 5 Notice: Undefined offset: 2 in ...

  4. PHP 小谈静态用法

    1.静态的表现形式,在PHP中定义一个静态变量需要加入一个关键字——static,静态对象是属于类的,非静态对象是属于对象的 class Fenbi { public $changdu;//属于对象的 ...

  5. 数据库 CRUD

    1.删除表 drop  table +表名 2.修改表 alter  table+表名+ add(添加)+列名+ int(类型) alter  table+表名+ drop(删除)+column(列) ...

  6. editPlus修改默认的文件编码

  7. 面向切面编程AOP:基于XML文件的配置

    除了使用AspectJ注解声明切面,Spring也支持在bean的配置文件中声明切面,这种声明是通过aop scheme中的XML元素完成的. 首先建立一个类: package com.sevenhu ...

  8. SPOJ COT2 Count on a tree II(树上莫队)

    题目链接:http://www.spoj.com/problems/COT2/ You are given a tree with N nodes.The tree nodes are numbere ...

  9. Linux内核之旅 List_entry()

    #include "iostream" #define List_entry(type,member)\ (type *)(()->data)) ) using namesp ...

  10. Unity中加入Android项目的Build步骤

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 简介: 有的项目需要在Android中加入Unity功能,例如ANDROID应用中嵌入Un ...