ITPub博客

首页 > 应用开发 > IT综合 > SWT的可视化控件的X11窗口句柄简介(转)

SWT的可视化控件的X11窗口句柄简介(转)

原创 IT综合 作者:BSDLite 时间:2007-08-15 21:48:12 0 删除 编辑
SWT的可视化控件的X11窗口句柄简介(转)[@more@]  SWT与AWT本质上都是一套依赖于操作系统具体实现的GUI库。与swing在所有操作系统上外观一致的做法不同,awt和swt在不同的操作系统上的外观是和本地窗口一样的。

  每一个swt和awt的窗口都对应一个本地窗口(native window),自然也会有一个窗口句柄。而swing则不同,是没有本地窗口句柄的。在获得窗口句柄之后,就可以和用其他的语言(比如C++)实现的 GUI应用程序进行一些互操作。比如我们可以调用一些SetParene()之类的方法把一个本地的窗口嵌入到一个SWT的窗口里来,反之亦然。这样就提供了一个创建更丰富美观的,可扩充性更强的GUI应用程序的手段。

  关于AWT的窗口句柄如何获得,就不多说了。大家可以参考一下你的jdk的安装目录的include子目录,可以看到里面有一个jawt.h,里面有一个很容易看懂的得到系统的window handle的sample. 我是用的linux上的SUN j2sdk 1.4,在include/linux子目录里还可以看到jawt_md.h.里面定义了一个struct:
CODE:
typedef struct jawt_X11DrawingSurfaceInfo {
Drawable drawable;
Display* display;
VisualID visualID;
Colormap colormapID;
int depth;
/*
* Since 1.4
* Returns a pixel value from a set of RGB values.
* This is useful for paletted color (256 color) modes.
*/
int (JNICALL *GetAWTColor)(JAWT_DrawingSurface* ds,
int r, int g, int b);
} JAWT_X11DrawingSurfaceInfo;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10617542/viewspace-959872/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论