`

SWT学习笔记3——颜色、字体、图片

 
阅读更多




import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.graphics.ImageData;
import org.eclipse.swt.graphics.PaletteData;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.SWT;
import org.eclipse.wb.swt.SWTResourceManager;
import org.eclipse.swt.widgets.Button;

public class TestColorImageFont {
	static Display display = Display.getDefault();
	//三种颜色获取方式
	static Color white = new Color(display, 255, 255, 255);
	static Color sysBlack = display.getSystemColor(SWT.COLOR_BLACK);
	static Color swtBlue = SWTResourceManager
			.getColor(SWT.COLOR_LIST_SELECTION);

	//两种图片获取方式,外加自己生成图片自己写数据
	static Image errorIcon = display.getSystemImage(SWT.ICON_ERROR); //内置图像
	static Image tigerIcon = new Image(display, "hu.jpg");//读取的图像
	//自己生成图像,参数为 图像宽、高,颜色的depth,RGB的掩膜(RGB对应的bit)
	static ImageData imageData=new ImageData(20, 20, 24, new PaletteData(0xFF0000, 0xFF00, 0xFF));
	static Image createdIcon=new Image(display, imageData);//难道是独立的?设置完数据重新生成才有效!!!否则是黑的而且直接设置图片的内容也不行!!!
	
	
	//字体
	static Font sysFont = display.getSystemFont();
	static Font songFont = new Font(display, "宋体", 22, SWT.NONE);

	public static void main(String[] args) {
		
		//设置生成的图像的内容
		for (int x = 0; x < imageData.width; x++) {
			for (int y = 0; y < imageData.height; y++) {
					imageData.setPixel(x, y, 0xFF00FF);
//					createdIcon.getImageData().setPixel(x, y, 0xFF00FF);//没用啊!!!
			}
		}
		createdIcon=new Image(display, imageData);//不加此行改了图片数据也无效啊!!!
		
		Shell shell = new Shell();
		shell.setSize(576, 226);
		shell.setText("SWT Application");
		shell.setBackground(sysBlack);
		shell.setImage(display.getSystemImage(SWT.ICON_WORKING));

		Label lblErr = new Label(shell, SWT.NONE);
		lblErr.setForeground(white);//前景颜色
		lblErr.setBackground(swtBlue);//背景颜色
		lblErr.setBounds(10, 10, 78, 32);
		//lblNewLabel.setImage(errorIcon); //label中文字和图片不能同时显示
		lblErr.setText("Error Label");
		lblErr.setToolTipText("label中文字和图片不能同时显示");

		Button btn = new Button(shell, SWT.NONE);
		btn.setAlignment(SWT.RIGHT);
		btn.setBounds(94, 31, 462, 127);
		btn.setText("Button Text");
		btn.setImage(tigerIcon);//图片
		btn.setFont(songFont);//字体

		
		Label lblCreate=new Label(shell, SWT.NONE);
		lblCreate.setAlignment(SWT.CENTER);
		lblCreate.setBounds(10, 100, 78, 32);
		lblCreate.setImage(createdIcon);
		
		shell.open();
		shell.layout();
		while (!shell.isDisposed()) {
			if (!display.readAndDispatch()) {
				display.sleep();
			}
		}
	}
}
  • 大小: 57.9 KB
分享到:
评论

相关推荐

    学习SWT,RCP的笔记.doc

    ### SWT与RCP基础知识 #### 一、SWT概述 SWT(Standard Widget Toolkit)是一种专为Java设计的用户界面工具包,它提供了一系列的原生控件来创建丰富的客户端应用。SWT的一个显著特点在于它能直接调用操作系统的GUI...

    swt学习笔记摘录(入门程序)

    SWT(Standard Widget Toolkit)是Java中用于构建图形用户界面(GUI)的一种库,与AWT和Swing不同,SWT直接与操作系统底层交互,提供更原生的...通过学习和掌握SWT,开发者可以创建出与本地应用相媲美的Java应用程序。

    SWT控件知识学习笔记

    ### SWT控件知识学习笔记 #### 一、SWT/JFace常用组件介绍 SWT (Standard Widget Toolkit) 是 Eclipse 平台的一个图形界面工具包,它提供了与平台无关的 GUI 组件,允许开发者构建高性能的应用程序。SWT/JFace ...

    SWT和JFACE学习笔记

    学习 SWT 和 JFace 对于理解 Eclipse 平台开发和 GUI 编程至关重要。它们提供的组件丰富且功能强大,能帮助开发者快速构建跨平台的应用程序。在实际开发中,结合使用 SWT 和 JFace 可以平衡性能和易用性,提高开发...

    swt form

    3. 布局管理:SWT提供了多种布局管理器来控制组件在表单中的位置和大小,这对于创建美观且适应不同屏幕尺寸的界面至关重要。 4. 事件处理:SWT支持事件驱动编程,用户可以通过监听和处理事件(如按钮点击、文本更改...

    swt入门学习资料

    错误,提示找不到相应的库。这是因为 SWT 库依赖于本地操作系统,需要对应操作系统的动态链接库(DLL)。对于Windows系统,需要 swt_win32.dll,而...通过学习 SWT,开发者可以创建出既美观又高效的跨平台应用程序。

    SWT JFACE 编程笔记

    SWT JFACE 编程笔记 , 比较适合刚 解除 java swt jface 的开发人员

    swt开发的笔记

    【SWT开发笔记】主要涉及的是Java编程领域中的一门重要技术——Standard Widget Toolkit(SWT)。SWT是Eclipse基金会推出的一个开源GUI库,它为Java开发者提供了一种创建本地化用户界面的方式,与Java Swing相比,...

    swt,jface笔记

    在"swt,jface笔记"这个压缩包中,可能包含了关于这两项技术的学习笔记、示例代码、教程等资料。通过深入学习和实践这些材料,你可以更好地理解和掌握SWT和JFace的使用,从而提高开发Java桌面应用的能力。

    Eclipse插件开发学习笔记 第三四篇(26-28)+原代码.rar

    Eclipse插件开发 学习笔记 第一篇 开发基础(01-05).rar Eclipse插件开发 学习笔记 第一篇 开发基础(06-10).rar Eclipse插件开发 学习笔记 第二篇 核心技术(11-16).rar Eclipse插件开发 学习笔记 第二篇 核心技术(17-...

    SwtDesigner3

    SwtDesigner3SwtDesigner3SwtDesigner3SwtDesigner3SwtDesigner3SwtDesigner3SwtDesigner3

    swt-64.rar_64位swt_64的SWT_SWT64_swt.jar 64位_swt64位

    标题“swt-64.rar_64位swt_64的SWT_SWT64_swt.jar 64位_swt64位”表明这个压缩包包含了适用于64位Windows操作系统的SWT库。描述中提到的“64位windows操作系统使用的SWT库”进一步确认了这一点。 SWT的设计目标是...

    SWT编程开发学习资料

    3. **对话框和Shell**:Shell是SWT应用程序的基本窗口,而对话框则包括消息对话框、输入对话框、文件选择对话框等,它们是用户交互的重要部分。学习如何创建和使用这些元素对于开发完整的应用程序至关重要。 4. **...

    swt table 实现换行

    根据提供的文件信息,可以看出本文主要讨论的是如何在 SWT (Standard Widget Toolkit) 的 Table 控件中实现文本换行的功能。SWT 是一个用于开发基于 Java 的桌面应用程序的工具包,它提供了丰富的用户界面组件来帮助...

    swt学习资料pdf

    3. **Event机制**:SWT中的Event机制是处理用户交互的核心。通过监听和处理事件,开发者可以控制应用程序的行为。资料可能包含事件类型的分类、事件监听器的使用以及如何自定义事件。 4. **布局管理**:SWT提供了...

    SWT API 帮助文档 及源码

    4. **颜色和字体**:SWT 支持设置控件的颜色和字体,以满足界面个性化需求。例如,`Display.getSystemColor()` 获取系统颜色,`Font.createFont()` 创建自定义字体。 5. **图像和位图**:SWT 提供了处理图像和位图...

    SWT源码 swt.jar

    描述中提到的"src.zip"文件包含的是SWT的源代码,这对于开发者进行调试、学习和定制SWT行为至关重要。源代码可以被导入到任何支持Java开发的IDE,比如Eclipse,通过关联源码,可以在编写代码时直接查看SWT的内部实现...

    eclipse -- swt

    3. **学习曲线**:相比Swing,SWT的学习曲线可能较为陡峭,因为它更底层,需要了解更多的操作系统细节。 **SWT在Eclipse插件开发中的应用:** Eclipse插件通常使用SWT和JFace结合的方式进行开发,这样既可以利用SWT...

    DJNativeSwing-SWT有关的所有jar,java将HTML页面转为图片

    标题中的"DJNativeSwing-SWT有关的所有jar,java将HTML页面转为图片"涉及到的是一个Java库,DJNativeSwing-SWT,它允许开发者在Java应用中集成Swing和 SWT(Standard Widget Toolkit)组件,并且能够将HTML页面转换...

Global site tag (gtag.js) - Google Analytics