这个例子是使用自定义选项卡的例子,实现的功能是最大,最小化。在运用中这种是很常见的,贴上来备忘。
Java代码
- package com.example.swt.ctabfoldersample;
-
- import org.eclipse.swt.SWT;
- import org.eclipse.swt.custom.CTabFolder;
- import org.eclipse.swt.custom.CTabFolder2Adapter;
- import org.eclipse.swt.custom.CTabFolderEvent;
- import org.eclipse.swt.custom.CTabItem;
- import org.eclipse.swt.graphics.Color;
- import org.eclipse.swt.graphics.Image;
- import org.eclipse.swt.layout.GridData;
- import org.eclipse.swt.layout.GridLayout;
- import org.eclipse.swt.widgets.Display;
- import org.eclipse.swt.widgets.Shell;
- import org.eclipse.swt.widgets.Text;
-
- public class CTabFolderSample
- {
- public static void main(String[] args)
- {
- final Display display = Display.getDefault();
- final Shell shell = new Shell();
- shell.setSize(296, 255);
- shell.setText("CTabFolder 练习");
- shell.setLayout(new GridLayout());
-
-
- shell.open();
-
- final CTabFolder tabFolder = new CTabFolder(shell, SWT.NONE|SWT.CLOSE|SWT.BORDER);
- tabFolder.addCTabFolder2Listener(new CTabFolder2Adapter() {
- public void minimize(CTabFolderEvent event) {
- tabFolder.setMinimized(true);
- tabFolder.setLayoutData(new GridData(SWT.FILL,SWT.FILL,true,false));
- shell.layout(true);
- }
- public void maximize(CTabFolderEvent event) {
- tabFolder.setMaximized(true);
- tabFolder.setLayoutData(new GridData(SWT.FILL,SWT.FILL,true,true));
- shell.layout(true);
- }
- public void restore(CTabFolderEvent event) {
- tabFolder.setMinimized(false);
- tabFolder.setMaximized(false);
- tabFolder.setLayoutData(new GridData(SWT.FILL,SWT.FILL,true,false));
- shell.layout(true);
- }
- });
-
- tabFolder.setTabHeight(20);
- tabFolder.marginHeight = 5;
- tabFolder.marginWidth = 5;
- tabFolder.setMaximizeVisible(true);
- tabFolder.setMinimizeVisible(true);
- tabFolder.setLayoutData(new GridData(SWT.FILL,SWT.FILL,true,false));
-
-
-
-
- Color[] color=new Color[4];
- color[0]=display.getSystemColor(SWT.COLOR_DARK_BLUE);
- color[1]=display.getSystemColor(SWT.COLOR_BLUE);
- color[2]=display.getSystemColor(SWT.COLOR_DARK_GRAY);
- color[3]=display.getSystemColor(SWT.COLOR_WHITE);
- int[] intArray=new int[]{25,45,100};
- tabFolder.setSelectionBackground(color, intArray);
-
- tabFolder.setSimple(false);
- tabFolder.setUnselectedCloseVisible(true);
- for (int i = 1; i < 4; i++) {
- CTabItem item = new CTabItem(tabFolder, SWT.None|SWT.MULTI|SWT.V_SCROLL);
- item.setText("选项卡" + i);
- Text t = new Text(tabFolder, SWT.None|SWT.MULTI|SWT.V_SCROLL|SWT.H_SCROLL|SWT.WRAP);
- t.setText("这是选项卡可以控制的文字" + i+"\n\n世界第一等\n\n一路顺风");
- item.setControl(t);
-
- }
- Image image=new Image(display,"C:\\Documents and Settings\\Administrator\\桌面\\label.jpg");
- shell.setImage(image);
- shell.setSize(300, 200);
- shell.layout();
- while (!shell.isDisposed()) {
- if (!display.readAndDispatch())
- display.sleep();
- }
- }
-
- }
说明:
第一、状态说明,根据选项卡的状态右上角显示最大化还是最小化还是回复的按钮。设置最小化的方法:setMinimized(true),设置最大化:setMaximized(true),设置为既不是最大也不是最小的办法是:同时把setMinimized和setMaximized设置为false。
获取状态的方法是:是否最大化getMinimized(),是否最大化getMaximized()。
第二、限制选项卡文字的长度:
tabFolder.setminimumCharacters(int)设置选项卡文字的最小长度。
第三、设置右上角控件
Button button=new Button(tabFolder,SWT.ARROW|SWT.RIGHT);
tabFolder.setTopRight(button);
//tabFolder.setTopRight(button,SWT.FILL);//布满右侧区域
分享到:
相关推荐
本文将深入探讨SWT和JFace的相关知识点,并结合实际的“SWTProjec”练习案例进行说明。 SWT是Eclipse开源组织推出的一个GUI库,它直接与操作系统进行交互,以实现更高效的性能。SWT提供了丰富的控件集合,包括按钮...
这个“关于swing和swt的小练习”压缩包文件提供了一些实际的代码示例,帮助开发者深入理解这两种技术。 Swing是Java Foundation Classes (JFC)的一部分,由纯Java编写,因此具有跨平台性。它提供了丰富的组件集合,...
《SWT开发者手记》是一本专为Java开发者设计的指南,旨在帮助读者从入门到精通SWT(Standard Widget Toolkit)技术。SWT是Eclipse基金会开发的一个开源GUI(图形用户界面)库,它提供了与操作系统原生界面的紧密集成...
标题“swt-64.rar_64位swt_64的SWT_SWT64_swt.jar 64位_swt64位”表明这个压缩包包含了适用于64位Windows操作系统的SWT库。描述中提到的“64位windows操作系统使用的SWT库”进一步确认了这一点。 SWT的设计目标是...
org.eclipse.swt.custom.CTabFolder2Listener.class org.eclipse.swt.custom.CTabFolderAdapter.class org.eclipse.swt.custom.CTabFolderEvent.class org.eclipse.swt.custom.CTabFolderLayout.class org.eclipse....
SWT(Standard Widget Toolkit)是Eclipse项目的一个重要组成部分,它提供了一套用于构建图形用户界面(GUI)的API,与Java Swing不同,SWT基于操作系统原生的UI组件,因此能够实现更好的性能和与操作系统的集成。...
### SWT配置详解 #### 一、SWT简介与配置的重要性 SWT(Standard Widget Toolkit)是一种用于构建基于Java的应用程序的图形用户界面工具包。它提供了丰富的控件集,并能够生成本地外观和感觉的界面,这使得应用在...
【标题】"swt-api swt DOC" 指的是一个关于SWT(Standard Widget Toolkit)API的文档,主要用于Java GUI(图形用户界面)开发。这个文档可能是开发者们在使用SWT进行界面设计时的重要参考资料。 【描述】"java界面...
下载编译的SWT库,版本号4.911,包含多个版本: org.eclipse.swt.cocoa.macosx.x86_64 org.eclipse.swt.gtk.linux.aarch64 org.eclipse.swt.gtk.linux.arm org.eclipse.swt.gtk.linux.ppc64le org.eclipse.swt.gtk....
### SWT JFace 按键、事件、监听 #### 概述 SWT(Standard Widget Toolkit)是Eclipse平台下的图形界面开发工具包,而JFace则是基于SWT之上的高级用户界面工具集。SWT提供了低级别的组件,用于创建跨平台的图形...
在本文中,我们将深入探讨SWT(Standard Widget Toolkit)的应用,以及如何在Java应用程序中使用它。SWT是由IBM公司为Eclipse集成开发环境设计的一种图形用户界面(GUI)工具包,它通过JNI(Java Native Interface)...
SWT(Standard Widget Toolkit)是Java编程环境中一个用于创建图形用户界面(GUI)的开源库。它是Eclipse项目的一部分,旨在提供与操作系统更紧密的集成,使得开发者可以创建原生外观的应用程序。SWT提供了丰富的...
Java SWT(Standard Widget Toolkit)是Java平台上用于创建桌面应用程序的一个库,它提供了丰富的用户界面元素,如按钮、文本框、列表等。SWT是Eclipse IDE的基础,它通过与操作系统直接交互来提供本地化的图形用户...
SWT examples,SWT官方例子:http://www.eclipse.org/swt/examples.php 该页面所要下载的例子 其中,swt的例子在\plugins\org.eclipse.swt.examples.source_3.7.0.v3740f.jar中
根据提供的文件信息,可以看出本文主要讨论的是如何在 SWT (Standard Widget Toolkit) 的 Table 控件中实现文本换行的功能。SWT 是一个用于开发基于 Java 的桌面应用程序的工具包,它提供了丰富的用户界面组件来帮助...
Java平台上的图形用户界面(GUI)开发通常依赖于各种库和框架,DJNativeSwing和SWT(Standard Widget Toolkit)是其中两个重要的组件。本文将详细介绍这三个提及的JAR文件以及它们在Java应用中的作用。 首先,...
SWT (Standard Widget Toolkit) 是一个开放源代码的Java库,用于在各种操作系统上创建图形用户界面(GUI)。它是Eclipse项目的一部分,提供了一种替代Java标准库AWT和Swing的方式,允许开发者构建与本机系统更加紧密...
SWT(Standard Widget Toolkit)是Java编程中用于创建图形用户界面(GUI)的一种库,它为开发者提供了丰富的控件和对话框。在SWT中,`MessageBox`是一个用于显示简单的消息对话框的类,通常用来向用户显示警告、确认...
SWT(Standard Widget Toolkit)是Eclipse开源项目中的一部分,主要用于构建GUI(图形用户界面)应用程序。它提供了一组与操作系统紧密集成的图形控件,允许开发者创建原生外观的应用程序。SWT的设计目标是提高性能...
swt.jar swt.jar swt.jar swt.jar swt.jar