简明现代魔法 -> Java编程语言 -> SWT之路:SWT图像显示

SWT之路:SWT图像显示

2009-10-03

程序演示

还是先用SWT Desiner创建界面程序。然后创建一个Display对象和Image对象,和一个GC对象。类org.eclipse.swt.graphics.GC是一个封装了所有可执行的绘图操作的图形上下文(Graphics Context)。然后以Display和图片路径创建Image对象,再调用gc.drawImage();就可以显示图片了。

程序代码

package SWT;

import org.eclipse.swt.graphics.GC;

import org.eclipse.swt.graphics.Image;

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Shell;

public class showImages {

protected Shell shell;

public static Display myDisplay;

public static boolean internalCall = false;

/**

* Launch the application.

* @param args

*/

public static void main(String[] args) {

internalCall = true;

myDisplay = new Display();

try {

showImages window = new showImages();

window.open();

} catch (Exception e) {

e.printStackTrace();

}

}

/**

* Open the window.

*/

public void open() {

Display display = Display.getDefault();

createContents(myDisplay);

Image img = new Image(display, "images/3.jpg");

shell.open();

GC gc = new GC(shell);

gc.drawImage(img, 0, 0);

shell.layout();

while (!shell.isDisposed()) {

if (!display.readAndDispatch()) {

display.sleep();

}

}

img.dispose();

if (internalCall) display.dispose();

}

/**

* Create contents of the window.

*/

protected void createContents(Display display) {

myDisplay = display;

shell = new Shell();

shell.setSize(520, 280);

shell.setText("图像显示");

}

}

一旦你创建了一个GC,你就有责任通过它的dispose方法释放它的资源。一个由应用程序创建的GC需要立即被绘制,然后尽快释放掉。这是因为每个GC都需要一个底层的系统资源,而在某些操作系统中这些资源是稀缺的,像Win98就只允许同时创建五个GC对象。

shell swt 样式_SWT之路:SWT图像显示相关推荐

  1. shell swt 样式_swt shell设置窗口位于屏幕中间

    /** * 设置窗口位于屏幕中间 * @param shell 要调整位置的窗口对象 */ public static void center(Shell shell) { //获取屏幕高度和宽度 i ...

  2. java swt 打印_SWT(JFace) 打印功能

    演示代码如下: package swt_jface.demo11; import org.eclipse.swt.graphics.GC; import org.eclipse.swt.printin ...

  3. 【SWT】创建自己的SWT组件

    创建自己的SWT组件 引 在编写应用程序时,您通常使用 SWT 提供的标准小部件.有时,您需要创建自己的自定义小部件.例如,您可能想要添加标准小部件未提供的新型小部件,或扩展现有小部件的功能.本文阐述 ...

  4. java swt 布局管理器_JAVA.SWT/JFace: SWT布局管理器

    7.1 布局管理器概述 FillLayout(充满式布局):在单行或单列中放置相同大小的控件,是最简单的布局. RowLayout(行列式布局):在单行或者多行中放置控件,应用了fill.wrap和s ...

  5. java swt text 回车事件,Java SWT事件

    什么是事件?点击鼠标是一个事件,按下一个按钮也一个事件,关闭一个窗口也是一个事件. 什么是监听器?监听器就是监听事件什么时候发生的,用来控制事件发生的具体动作.(个人见解) 事件产生处的SWT组件称为 ...

  6. java swt 双屏_SWT(JFace)体验之打开多个Form

    代码很简单,如下所示: package swt_jface.demo1; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.GC; ...

  7. java swt designerpdf_eclipse学习笔记!(4) ----- SWT Designer 下 SWT常用组件

    一个button类的实例 基本的步骤和之前的是一样的,一个SWT的项目,然后在页面设置面板里添加button.双击button(直接在source里面添加了监听器的代码).下面是代码: publicc ...

  8. java 一个数的负数次幂_SWT之路:计算某数的负N次方

    简明现代魔法 -> Java编程语言 -> SWT之路:计算某数的负N次方 SWT之路:计算某数的负N次方 2009-11-13 有个同事来问,1.1的-5次方是多少? 于是自己写个程序来 ...

  9. java实现给选中文字添加样式,天坑之路:用js给选中文字添加样式

    前言 本例基于react,但是实际上就是用原生js做的.兼容性做到了IE9,但是按照这个思路做是可以做到IE8甚至更低的. 需求与最初的思路 当我拿到这个需求的时候以为很简单,就是可以给页面上的文章做 ...

最新文章

  1. 用户一亿的网易新闻客户端质量如何?
  2. WebRTC端点检测使用中遇到的部分问题汇总
  3. STL中的priority_queue(优先队列)
  4. OpenKruise v0.7.0 版本发布:新增周期任务分发控制器
  5. Python 计算机视觉(六)—— OpenCV 进行图像量化与采样
  6. Minio Docker 单机安装(二种模式) linux
  7. linux java 文件夹创建失败_Linux文件夹文件创建、删除
  8. 分治法在二叉树遍历中的应用(JAVA)--二叉查找树高度、前序遍历、中序遍历、后序遍
  9. SpringBoot-拦截器和文件上传
  10. Pandas 对象储存
  11. rpm方式安装mysql5.7_centos下rpm方式安装mysql5.7
  12. Java swing 开发windows桌面应用:课堂点名程序
  13. SVN修改提交后的文件名
  14. PCBA加工波峰焊空焊原因及对策
  15. 身体指标的测试软件,Runtastic Libra体重秤(身体指标测量)
  16. MySQL-SQL语句优化
  17. Android.view.View类全貌【思维导图】
  18. jmeter察看结果树之json使用
  19. 《亲密关系》书摘 [美]莎伦 布雷姆
  20. Nature子刊:对EcoG脑机接口进行无监督适应

热门文章

  1. 大厂HR年底绷不住了:怎么招程序员这么难,尤其搞这项技术的!!
  2. 国内首家!华为获5G核心网电信设备进网许可证;亚马逊或颠覆博通等芯片制造商?2020年5G总投资额达0.9万亿元……...
  3. 小学学校计算机室财产登记册,小学财产登记制度
  4. html截取url字段,Html中截取url参数 实现HTML间的url传值
  5. sql语句在navicat中可以查询到所有数据但是在idea程序中不行_数据迁移测试实施方案...
  6. unc 目录不受支持_Shopify平台对于店铺模版都提供哪些支持
  7. Directory /opt/jfrog/artifactory/var has bad permissions for user id 1030
  8. 解决vsftpd 读取目录列表失败的问题
  9. springboot2 配置redis报错 redis timeout Value not a valid duration解决办法
  10. SpringBoot2.x整合Redis 分布式集群_02