1. package org.open.swing.taiji;
  2.  
  3. /**
  4. * @(#)Taichi.java
  5. *
  6. *
  7. * @author
  8. * @version 1.00 2007/6/12
  9. */
  10. import javax.swing.*;
  11. import java.awt.*;
  12.  
  13. public class taiji extends JFrame {
  14.  
  15. int width = 400;
  16. int height = 300;
  17.  
  18. /**
  19. * @Fields serialVersionUID : TODO
  20. */
  21. private static final long serialVersionUID = 4561427255541891262L;
  22. /**
  23. * Creates a new instance of <code>Taichi</code>.
  24. */
  25. public taiji() {
  26. setSize(width, height);
  27. setTitle("太极图");
  28. Toolkit kit = Toolkit.getDefaultToolkit();
  29. Dimension screenSize = kit.getScreenSize();
  30. int x = (screenSize.width - width) / 2;
  31. int y = (screenSize.height - height) / 2;
  32. setLocation(x, y);
  33. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  34. }
  35.  
  36. /**
  37. * @param args
  38. * the command line arguments
  39. */
  40. public static void main(String[] args) {
  41. // TODO code application logic here
  42. taiji frame = new taiji();
  43. DrawPanel drawPanel = new DrawPanel();
  44. frame.setContentPane(drawPanel);
  45. frame.setVisible(true);
  46. }
  47.  
  48. }
  49.  
  50. class DrawPanel extends JPanel {
  51. /**
  52. * @Fields serialVersionUID : TODO
  53. */
  54. private static final long serialVersionUID = 5533924769973854832L;
  55. public DrawPanel() {
  56. setBackground(Color.GRAY);
  57. }
  58.  
  59. public void paintComponent(Graphics g) {
  60. super.paintComponent(g);
  61. g.setColor(Color.BLACK);
  62. g.fillArc(x, y, d, d, 0, 180);
  63. g.setColor(Color.WHITE);
  64. g.fillArc(x, y, d, d, 180, 180);
  65. g.setColor(Color.BLACK);
  66. g.fillArc(x + d / 2, y + d / 4, d / 2, d / 2, 180, 180);
  67. g.setColor(Color.WHITE);
  68. g.fillArc(x, y + d / 4, d / 2, d / 2, 0, 180);
  69. g.fillOval(x + d * 3 / 4 - 5, y + d / 2 - 5, 10, 10);
  70. g.setColor(Color.BLACK);
  71. g.fillOval(x + d / 4 - 5, y + d / 2 - 5, 10, 10);
  72. }
  73.  
  74. int x = 100;
  75. int y = 40;
  76. int d = 200;
  77. }

swing画太极图案源码的更多相关文章

  1. 很值得学习的java 画图板源码

    很值得学习的java 画图板源码下载地址:http://download.csdn.net/source/2371150 package minidrawpad; import java.awt.*; ...

  2. vue 画二维码

    首先安装一下相关的插件 qrcode2 npm install --save qrcode2 然后在需要画二维码的页面引入一下 import QRCode from 'qrcode2' 最后在meth ...

  3. 【示例代码】HTML+JS 画图板源码分享

    一个有趣的画图板, 用了 HTML5中的本地存储.下载.canvas 等技术,这个项目中用到了canvas 的很多基础功能,初学者可以学习一下 . 建议开发童鞋使用统一开发环境UDE来进行查看.调试. ...

  4. java用swing画可以行走的乌龟

    代码如下: import java.awt.Color;import java.awt.Graphics;import java.awt.event.KeyEvent;import java.awt. ...

  5. Div+Css画太极图源代码

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>D ...

  6. canvas初学 半动态画太极图

    可直接复制粘贴运行 <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head&g ...

  7. js通过codeURL画二维码

    一.函数封装 //生成微信二维码 function xyqrcode(options) { var settings = { dom:'', render: 'canvas', //生成二维码的格式还 ...

  8. android 方案源码下载repo同步遇到的问题

    1. error: could not verify the tag 'v1.12.4'的解决 repo init -u git://github.com/CyanogenMod/android.gi ...

  9. 使用turtle库画太极图

    from turtle import * pensize(3) penup() pencolor("black") reset() speed(10) pendown() circ ...

随机推荐

  1. 关于AutoComplete整合

    AutoComplete应该不是很陌生了,网上也有好多开源的js.今天主要的不是研究Autocomplete这个js的实现.今天主要讲的是将这个js做成一插件.那么今天主要用到的 js插件jquery ...

  2. androisd wifi

    http://blog.csdn.net/yunjinwang/article/details/11968837 http://blog.csdn.net/yunjinwang/article/det ...

  3. 详细的OS X Yosemite 10.10懒人版安装教程

    永远记住一句话:难,是因为不会.先是要放宽心态,才更利于解决安装过程中这样那样的问题.多尝试多动脑,不要有过份的依赖.很多问题到解决以后,才发现是如此的简单,我装黑苹果是拿来使用的,所以我的目的是装好 ...

  4. 实例源码--Android自定义Gallery动画效果

    相关文档与源码: 下载源码   技术要点: 1.自定义控件的使用 2.Gallery控件的使用实例 3.详细的源码注释 ...... 详细介绍: 1.自定义控件的使用 本套源码通过自定义控件的方式,继 ...

  5. memcahced 更新

    memcahc特性: 在 Memcached中可以保存的item数据量是没有限制的,只要内存足够 . Memcached单进程在32位系统中最大使用内存为2G,若在64位系统则没有限制,这是由于32位 ...

  6. Fedora下载地址

    http://fedoraproject.org/zh_CN/get-fedora-all

  7. QNetworkAccessManager的异步与线程

    Qt版本5.1.1 以HTTP操作为例 Qt中的HTTP操作都是异步的. 内部通过线程实现 创建线程的时机在QNetworkReplyHttpImplPrivate::postRequest() vo ...

  8. 深入研究Block用weakSelf、strongSelf、@weakify、@strongify解决循环引用(上)

    深入研究Block捕获外部变量和__block实现原理 前言 在上篇中,仔细分析了一下Block的实现原理以及__block捕获外部变量的原理.然而实际使用Block过程中,还是会遇到一些问题,比如R ...

  9. struts2简单示例

    今天写一个struts2的例子,目的是为了让大家明白struts2的基本流程,其实框架没有大家想象的那么难,说白了struts2的本质就是一个大的Servlet,即原本需要提交到Servlet处理的部 ...

  10. PHP读书笔记(6)- 数组

    数组定义 数组就是一个键值对组成的语言结构,键类似于酒店的房间号,值类似于酒店房间里存储的东西.PHP 中的数组实际上是一个有序映射.映射是一种把 values 关联到 keys 的类型. 定义数组 ...