Swing实现动画效果
2017-04-14 00:00
127 查看
1.参考文章
Swing图形绘制(长方形、椭圆、同心圆及直方图)
Java绘图: 使用Graphics类绘制线段、矩形、椭圆/圆弧/扇形、图片、文本
2.代码
Swing图形绘制(长方形、椭圆、同心圆及直方图)
Java绘图: 使用Graphics类绘制线段、矩形、椭圆/圆弧/扇形、图片、文本
2.代码
import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.Timer; /** * @function 转动 * @time 2017年4月5日上午11:19:58 */ public class DoRun extends JPanel { private static final long serialVersionUID = 1L; private final int DELAY = 50;// 转动快慢设置 private final static Long time = (long) 5000; private static Timer timer; private int x = 0; /** * 调用 */ public static void main(String[] args) { JFrame frame = new JFrame("正转"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(new DoRun()); frame.setSize(300, 300); frame.setLocation(400, 400); frame.setVisible(true); try { Thread.sleep(time); } catch (InterruptedException e) { } timer.stop(); frame.setVisible(false); frame.dispose(); } /** * 面板构造函数,初始化面板。包括Timer 的场景。 */ public DoRun() { timer = new Timer(DELAY, new ReboundListener()); timer.start(); } /** * 动画效果:不断的更新图像的位置,已达到动画的效果。 */ private class ReboundListener implements ActionListener { @Override public void actionPerformed(ActionEvent e) { if (x < 360) { x = x - 20; } else { x = 0; } repaint(); } } /** * 绘出图像在面板中的位置 */ public void paintComponent(Graphics page) { super.paintComponent(page); drawArc(page); } /** * 画图形 */ private void drawArc(Graphics g) { Graphics2D g2d = (Graphics2D) g.create(); g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); int width = getWidth(); int height = getHeight(); g2d.setColor(Color.BLACK); g2d.drawArc(width / 2 - 110, height / 2 - 110, 10 + 200, 10 + 200, 0, 360); g2d.fillArc(width / 2 - 110, height / 2 - 110, 10 + 200, 10 + 200, x, 240); g2d.setColor(Color.WHITE); g2d.fillArc(width / 2 - 90, height / 2 - 90, 10 + 160, 10 + 160, 0, 360); g2d.dispose(); } }
相关文章推荐
- gif的动画图片,可否实现文字水印和图片水印的效果呢?
- VC:用AnimateWindow函数实现窗口动画效果
- 利用CSS和javascript实现Google首页的动画效果
- CaseStudy(showcase)类库篇-用agTweener来实现动画效果
- 使用silverlight中的Storyboard实现动画效果
- 基于MIDP1.0实现动画效果
- 用javascript实现动画效果
- 用C++Builder实现任务栏图标动画效果
- 用JavaScript实现动画效果
- 用AnimateWindow函数实现窗口动画效果
- WinForm的动画效果实现
- 用AnimateWindow函数实现窗口动画效果
- 用AnimateWindow函数实现窗口动画效果
- C#实现文字动画效果
- 用c#和GDI+实现杂志翻页动画效果
- 基于MIDP1.0实现动画效果
- 用AnimateWindow函数实现窗口动画效果
- 用javascript来实现动画导航效果的代码
- 使用silverlight中的Storyboard实现动画效果
- 使用Silverlight实现 FLASH的动画效果