`

初学SWT之布局应用

阅读更多
这次做下简单的笔记,SWT布局:RowLayout 和 GridLayout
/**
	 * 子组件将在父组件上一行或多行显示(设置相对应的属性,子组件会自动换行)
	 * RowLayout常用属性
	 * Wrap:子组件是否自动换行
	 * pack:子组件是否保持原有大小
	 * justify:子组件是否根据父组件信息做调整
	 * spacing:表示子组件之间的间距像素点个数
	 */
	public static void createRow(){
		shell.setText("Test RowLayout");
		
		
		//默认是横向布局 
		RowLayout row = new RowLayout(/*SWT.VERTICAL*/);
		row.wrap = true;//自动换行
		row.pack = true;//子组件是否保持原有大小
		row.justify =  true;//子组件是否根据父组件信息做调整
		row.spacing = 20;//表示子组件之间的间距像素点个数
		shell.setLayout(row);
		
		Label label = new Label(shell, SWT.NONE);
		label.setText("这是一条的数据");
		
		Button but = new Button(shell, SWT.NONE);
		but.setText("这是一个普通按钮");
		
		Button but1 = new Button(shell, SWT.CHECK);
		but1.setText("这是一个多选按钮");
		
		Button but2 = new Button(shell, SWT.RADIO);
		but2.setText("这是一个单选按钮");
		
		shell.pack();
		shell.open();
		while(!shell.isDisposed()){
			if(!display.readAndDispatch())
				display.sleep();
		}
		display.dispose();
	}
	
	/**
	 * GridLayout 是一个网络格式布局,把父组件分成一个表格,
	 * 子组件占据一个单元的空间,每个组件按添加到父组件的顺序排列在表格中
	 * 常用属性:
	 * horizontalSpacing:子组件的行间距
	 * verticalSpacing:列间距
	 * numColumns:多少列 默认是1列
	 * makeColumnsEqualWidth:设置父组件中子组件的宽度是否相同
	 */
	public static void createGrid(){
		shell.setText("Grid Layout");
		
		//设置为2列,并设置父组件中子组件的宽度相同
		GridLayout grid = new GridLayout(2, true);
		grid.marginTop = 20;
		grid.marginLeft = 20;
		grid.horizontalSpacing = 10;
		grid.verticalSpacing = 10;
		shell.setLayout(grid);
		
		Label label = new Label(shell, SWT.NONE);
		GridData data1 = new GridData(GridData.FILL_HORIZONTAL);
		data1.horizontalSpan = 2;//跨2列
		label.setLayoutData(data1);
		label.setText("这是一条的数据");
		
		Button but = new Button(shell, SWT.NONE);
		GridData data2= new GridData(GridData.FILL_HORIZONTAL);
		data2.verticalSpan = 2;//跨2行
		but.setLayoutData(data2);
		but.setText("这是一个普通按钮");
		
		Button but1 = new Button(shell, SWT.CHECK);
		but1.setText("这是一个多选按钮");
		
		Button but2 = new Button(shell, SWT.RADIO);
		but2.setText("这是一个单选按钮");
		
		shell.pack();
		shell.open();
		while(!shell.isDisposed()){
			if(!display.readAndDispatch())
				display.sleep();
		}
		display.dispose();
	}
分享到:
评论

相关推荐

    初学SWT&JFace

    【初学SWT&JFace】—— 探索Java图形用户界面的新篇章 在Java编程领域,GUI(图形用户界面)开发是构建交互式应用程序的关键部分。SWT(Standard Widget Toolkit)与JFace是两个非常重要的库,它们为Java开发者提供...

    初学SWT (一)

    **初学SWT (一)** SWT,全称Standard Widget Toolkit(标准小部件工具包),是IBM开发的一款用于Java编程的图形用户界面(GUI)工具包。它为Java应用程序提供了与操作系统更紧密集成的GUI组件,使开发者可以构建出与...

    Eclipse+SWT_JFace核心应用 随书光盘.zip

    《Eclipse+SWT_JFace核心应用》是由那静编著的一本专业书籍,主要针对的是Eclipse集成开发环境中的SWT(Standard Widget Toolkit)和JFace技术的应用。这本书的随书光盘包含了丰富的资源,旨在帮助读者深入理解和...

    SWT JFace核心应用原代码

    总之,"SWT JFace核心应用原代码"是一个宝贵的资源,不仅能让初学者深入理解SWT和JFace的使用,还能帮助他们掌握实际项目开发中的各种技巧和最佳实践。通过学习和分析这些代码,开发者可以提升自己的GUI编程能力,为...

    java SWT简单小工具

    通过分析这些文件,我们可以推测这个项目是一个基于Eclipse的Java SWT应用程序,它可能包含了一些基本的UI元素和布局管理,并且可能利用了第三方库来扩展功能,如转换Swing组件或提供特殊布局。对于初学者来说,通过...

    IBM GUI库SWT教程

    SWT(Standard Widget Toolkit)是由Eclipse基金会开发的一个用于创建图形用户界面(GUI)的开源库,它为Java应用程序提供了一种与平台无关的方式来构建原生外观的用户界面。IBM作为Eclipse的主要贡献者之一,对SWT...

    SWT界面设计PDF

    "Java程序设计之swt教程.pdf"则侧重于SWT的基础知识和实践应用,适合初学者。你将学习如何导入和使用SWT库,创建窗口和对话框,以及添加各种控件。这份教程还会讲解如何通过布局管理器组织控件,以达到理想的界面...

    Java swt完整教程

    4. SWT布局管理 SWT提供了几种布局管理器,如FillLayout、GridLayout、FormLayout等,用于控制组件在容器中的排列方式和大小调整。 5. SWT与JFace JFace是建立在SWT之上的抽象层,简化了SWT的使用,提供了一些...

    swt学SWT者必备的帮助文档

    文档内容详细,覆盖了SWT的基本概念、组件使用、事件处理、布局管理等多个方面,是学习和开发SWT应用的重要参考资料。 首先,了解SWT的基础是至关重要的。SWT的核心是它的控件库,包括按钮、文本框、列表、树、表格...

    SWT编程开发学习资料

    5. **JFace与RCP**:JFace是建立在SWT之上的高级抽象层,简化了UI开发。而Eclipse Rich Client Platform (RCP) 是基于SWT和JFace构建桌面应用程序的一个完整框架。学习这两个扩展可以提升你的开发效率并提供更强大的...

    SWT.rar_SWT tutorial_java swt_swt 登陆窗口_swt tutori_swt-designer

    本教程“SWT tutorial”针对SWT进行深入讲解,特别适合初学者学习。 SWT的核心概念是组件(Widgets),这些组件包括按钮、文本框、列表等,它们构成了GUI的基本元素。通过组合和配置这些组件,开发者可以创建各种...

    SWT可视化插件

    对于初学者,可以先从理解SWT的基本组件和布局管理开始,然后逐渐深入到事件处理、自定义控件以及与其他Eclipse服务的集成等方面。同时,Window Builder的使用技巧也非常重要,例如熟悉其各种编辑模式、快捷键和预览...

    swt的简单代码

    5. SWT与JFace:JFace是建立在SWT之上的一层抽象,提供了一些高级的控件和数据绑定机制,简化了SWT的使用,减少了重复代码。 【简单SWT程序示例】 以下是一个使用SWT创建简单窗口的代码片段: ```java import org...

    SWT-Designer入门教程

    通过这个入门教程,初学者将能够快速上手SWT-Designer,而有经验的开发者也能进一步提高他们的GUI设计效率。掌握SWT-Designer将使你能够在Java开发中更专注于业务逻辑,而不是界面的构建,从而提升开发效率和应用...

    SWT的简单实例

    在描述中提到,这个例子对于初学者来说是一个很好的学习资源,因为它涵盖了SWT的基本组件。下面,我们将进一步探讨如何使用这些组件构建一个简单的SWT应用: 1. **初始化SHELL**: 创建一个新的SHELL实例,设置其...

    SWT.rar_ java swt_SWT_java swt_java s_java swt

    同时,SWT的原生外观意味着应用程序在不同的操作系统上看起来和感觉就像本地应用一样,这对于跨平台应用的开发尤其重要。 SWT还支持布局管理,例如GridLayout、FormLayout和FillLayout,这使得开发者可以轻松地组织...

    SWT.rar_SWT_eclipse swt

    描述中提到“eclipse使用SWT编程最基础的一些代码什么的”,意味着这个压缩包可能包含了一些基础的SWT代码片段,供初学者学习如何在Eclipse环境中使用SWT来构建GUI应用程序。这些代码通常会涵盖如何创建窗口、按钮、...

    swt原生库(用java开发swt用)

    这种设计使得SWT能够利用操作系统的图形功能,避免了Java图形渲染的性能瓶颈,同时也确保了应用的界面与操作系统其他应用保持一致。 在使用SWT进行开发时,开发者可以使用诸如按钮、文本框、表格、树视图等常见的...

    swt入门范例新手适用,入门级

    SWT(Standard Widget Toolkit)是Java编程中用于创建...通过学习这些示例,初学者可以更好地理解和掌握SWT的用法,从而快速上手开发SWT GUI应用。在实践中不断练习,结合SWT的文档和教程,可以逐步提升GUI编程的能力。

Global site tag (gtag.js) - Google Analytics