设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 技术文摘 查看内容

创建一个Swing组件—JImageComponent

2014-7-18 12:03| 发布者: joejoe0332| 查看: 4556| 评论: 0|原作者: LeoXu, -多啦A梦-|来自: oschina

摘要: 下载示例项目 - 19.2 KB下载示例 - 15.7 KB下载源代码 - 13.4 KB 介绍Introduction 本文展示了如何使用Java™来创建一个用来在Java™ 的applet和/或应用程序中展示图片的Swing类. 它还包括了使得图片渲染加快需要 ...


使用代码

使用了JImageComponent的开发者应该记得在修改或者编辑了图像之后调用repaint()方法.

那些希望实现并测试他们的 JComponent 子类的开发者必须遵守有关Swing的执行指导方针(http://docs.oracle.com/javase/tutorial/uiswing/concurrency/index.html):

Java Applet 应该使用 SwingUtilities 的 invokeAndWait():

Java 应用程序可能也使用 SwingUtilities 的 invokeAndWait() 或者 invokeLater():

使用invokeAndWait的一个例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
try {
        javax.swing.SwingUtilities.invokeAndWait(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
    }
    catch (InvocationTargetException exception) {
        // TODO Auto-generated catch block
        exception.printStackTrace();
    }
    catch (InterruptedException exception) {
        // TODO Auto-generated catch block
        exception.printStackTrace();
    }

使用 invokeLater 的一个例子:

1
2
3
4
5
javax.swing.SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            createAndShowGUI();
        }
    });

更进一步

这是对创建一个 Java™ Swing的 JComponent子类用来展示图像的一个简要介绍. 从这里起步,还有许多的方面需要涉及. 例如,JImageComponent对于其便捷的设置和修改没有做出规定.

创建一个Java™ 抽象窗口工具Abstract Window Toolkit 的 Component 类的子类可能需要要遵循同样的步骤. 这些地方需要特别注意: 有一个缺陷将会需要子类做出规定,以确保有用于消除可能的闪烁的额双缓冲; 另外一个则要扩展类来正确的捕获和/或引发事件.

要点

开发者也许还会对Java™的用于图像的 2D 图形 API感兴趣.

扩展Swing的 JComponent 并不要能达成此目的唯一能被扩展的类 .  例如,开发者肯能会选择JPanel类来扩展.

在商业应用程序中,我会坚持使用像JButton和JLable这样的本地类,以方便使用. 在 2014 年, 我改进了用于滚动容器中的 JImageComponent . 现在,我会使用 JImageComponent 来做一些像测试动画,绘制分形以及绘制自定义图像这些有趣的事情.


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部