当前位置:  编程技术>java/j2ee

开发基于Java的图形用户界面

    来源: 互联网  发布时间:2014-10-15

    本文导语:  SWT(Standard Widget Toolkit)是IBM推出的“基于java”的图形界面开发库,我之所以说它是“基于java”的意思是程序员编写代码的时候是使用java语言,事实上SWT的底层实现是C语言完成的。但是这些对程序员是透明的。   我们使用SWT...

SWT(Standard Widget Toolkit)是IBM推出的“基于java”的图形界面开发库,我之所以说它是“基于java”的意思是程序员编写代码的时候是使用java语言,事实上SWT的底层实现是C语言完成的。但是这些对程序员是透明的。

  我们使用SWT开发GUI程序的时候,直接用SWT API来写。事实上很多java的代码是通过JNI去掉用C代码来实现的。针对不同的平台每个类有不同的实现方式,这篇文章的目的不在于讲述SWT的设计原理,如果你对这些感兴趣的话可以参考http://www.eclipse.org/articles/Article-SWT-Design-1/SWT-Design-1.html。

  下面开始介绍如何使用SWT,首先我假设你已经安装了Eclipse3.0,当然其他的版本也可以,如果还没有的话从www.eclipse.org上去下载。

  运行Eclipse,切换到java透视图下面,从Package explore里面新建一个java project。名称为Test。

  在Libraries里面选择Add external JARs来添加运行SWT所需要的类库,这个和系统相关的,比如我在windows xp下,地址为:D:eclipsepluginsorg.eclipse.swt.win32_3.0.0wswin32swt.jar。把它添加进来,建议做一个variables指向这个swt.jar文件,以后直接添加variables就可以了。

  编写java代码,例如

  import org.eclipse.swt.widgets.*;
  import org.eclipse.swt.*;
  public class SWTHello {
  public static void main(String[] args) {
  Display display = new Display();
  Shell shell = new Shell(display);
  Label label = new Label(shell, SWT.NONE);
  label.setText("Hello, World!");
  shell.pack();
  label.pack();
  shell.open();
  while(!shell.isDisposed())
   if(!display.readAndDispatch())
    display.sleep();
    display.dispose();
    label.dispose();
  }
  }

  配置运行环境,由于SWT程序运行的时候要用到本机资源,如果你现在运行上面的程序的时候会出现错误,类似于java.lang.UnsatisfiedLinkError: no swt-win32-2133 in java.library.path”,因此你必须指定所需的DLL的位置,具体做法是:从菜单run->run切换到运行配置界面,选择Arguments在VM Arguments里面写入-Djava.library.path=例如在我的机器上DLL的地址为D:eclipsepluginsorg.eclipse.swt.win32_3.0.0oswin32†。这样每次运行都要配置显得有点麻烦,所以建议你在环境变量PATH里面添加这个包括DLL的路径。

  运行程序,你会看到你的第一程序的效果 :) 我的感觉是挺不错的,速度要比Swing/AWT快。

  关于如何使用SWT,请参考www.eclipse.org上面的相关文章,多看看AWT API,多写一些代码!

    
 
 

您可能感兴趣的文章:

  • Android用户界面开发之:TextView的使用实例
  • 嵌入式图形界面开发,选哪个开发工具好?
  • 应用于图形终端的界面开发用什么开发工具好?
  • Linux下面的开发好的Java程序,如何部署到其他机器?开发好的Java图形程序,终端上能否用?等问题
  • 图形开发的小问题
  • 拓扑图形化界面开发工具包 jTopo
  • (在线等待)如何进入motif图形界面的开发环境?谢谢!
  • 新手问题,在linux下c/c++开发是在图形界面下还是字符界面下进行?
  • 我装了红旗linux桌面系统,但是我想安装rh linux下的图形开发工具
  • 请问在linux下用什么软件进行图形界面开发最容易
  • Java的图形界面开发框架 Magritte
  • Python图形开发包 wxPython
  • 有没有好的Java图形开发工具?
  • 一个简单的问题-开发linux下程序,图形界面该如何实现
  • JS 图形和游戏开发引擎 FlashJS
  • 用java能否开发图形报表程序
  • 在Linux下开发有图形界面的程序,首选什么工具啊?
  • 在企业linux c/c++开发中 一般用什么图形化的IDE?????????
  • 在ubuntu下面开发图形界面程序的软件有那些
  • 请教:Linux下进行图形显示的开发环境与工具的选择
  • 请问:在linux嵌入式系统下开发应用软件,一般都用的是什么开发工具 或 图形界面开发IDE???
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • UNIX 环境下大家开发Windows界面的工具都用什么开发工具?
  • 界面开发,除了QT、GTK、miniGUI等,就没有别的了吗?文本模式下用什么做界面?
  • 请教关于工控设备的嵌入式linux程序开发(无界面或简单界面)
  • 开放式界面开发库 DirectUI
  • Windows高级界面开发库 MuiLib
  • C语言界面开发用什么
  • 3D界面开发引擎 MyGUI
  • 请教UNIX字符界面开发问题~
  • 嵌入式linux界面开发
  • Java界面开发工具 OpenJX
  • 有没有关于用curses库开发界面的好书,请各位推荐一下
  • 调查:大家在linux环境下开发界面的时候都用什么工具啊?
  • 在Linux下大家都用什么技术开发界面? GTK?QT?...
  • 如何在Solaris下使用GTK开发中文界面
  • 询问MAC OS下的界面开发技术
  • GNOME桌面环境下开发图形界面程序应该用?
  • 现在UNIX下用什么做界面开发
  • 各位大仙,推荐一下用什么环境或方法开发linux网络应用程序的客户端界面呢?
  • Linux界面开发
  • Linux图形界面开发
  • VS2012+MySQL+SilverLight5的MVVM开发模式介绍
  • linux 嵌入式开发用不用买开发板,买什么样的开发板?
  • ios app 开发中ipa重新签名步骤介绍
  • 请问shell 开发能开发什么样的程序?硬件的驱动程序是否能够开发呢?
  • 几个windows平台C++开发错误举例
  • 请问在Linux 下用C开发移动增值软件都有什么开发工具啊,我以前一直在Windows下用VC开发
  • IOS开发:UIScrollView类介绍及如何简单地截获touch事件
  • 我常未开发过Linux下的程序,请问Linux下可以使用那些开发工具,最好的开发工具是什么版本?
  • nginx最新主线开发版1.5.4发布及下载地址
  • WEB前端 iis7站长之家
  • Web前端开发如何利用css样式来控制Html中的h1/h2/h3标签不换行


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3