`
pocketduck
  • 浏览: 19705 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

eclipse wizard 占空间的解决办法

阅读更多

wizardpage区域下部总是会有相当大的一块区域出于空白,拖动窗口减小后高度那块区域仍然存在,会挤压正常的page区域,后来通过各种设置都不能改变,这种现象的主要原因就是在wizard模板中存在有一个ProgressIndicator控件占据了该块区域,即使不显示,这块区域也会被占用在WizardDialog中,看源码

protected Control createDialogArea(Composite parent) {
  Composite composite = (Composite) super.createDialogArea(parent);
  // Build the Page container
  pageContainer = createPageContainer(composite);
  GridData gd = new GridData(GridData.FILL_BOTH);
  gd.widthHint = pageWidth;
  gd.heightHint = pageHeight;
  pageContainer.setLayoutData(gd);
  pageContainer.setFont(parent.getFont());
  // Insert a progress monitor
  progressMonitorPart= createProgressMonitorPart(composite, new GridLayout());
  GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
  progressMonitorPart.setLayoutData(gridData);
  progressMonitorPart.setVisible(false);
  // Build the separator line
  Label separator = new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR);
  separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

  applyDialogFont(progressMonitorPart);
  return composite;
 }

 效果是这样,黑框里的就是空白区域

配图
其中progressMonitorPart 就是占空间的控件,虽然源码设置成默认不可见,但他还是牢牢占了这块区域,查了一下资料有人说只能重写这段源码注掉那部分内容,想了想也太不友好了,经过尝试,发现可以在子类中得到这个控件,让他不计算位置就可以完美解决了,代码如下

 /**
	 * Overwrite the method. disable the ProgressMonitorPart which take up place on bottom of page 
	 */
	protected Control createDialogArea(Composite parent) {
		Composite composite = (Composite)super.createDialogArea(parent);
		for(Control control : composite.getChildren()){
			if(control instanceof ProgressMonitorPart){
				GridData gd = (GridData)control.getLayoutData();
				gd.exclude = true;
			}
		}
	
		return composite;
	}

 

效果如下

 

分享到:
评论

相关推荐

    eclipse 中自定义向导(wizard)的实现

    eclipse 中自定义向导(wizard)的实现 eclipse 中自定义向导(wizard)的实现是结合实际例子进行讲解的,通过设计和实现自定义向导来描述任务。下面是关于自定义向导的设计和实现的详细信息。 概述 ---- 自定义...

    axis2-eclipse-service-archiver-wizard和axis2-eclipse-codegen-wizard

    共四个文件,都是最先版的,希望可以帮助大家。axis2-eclipse-service-archiver-wizard和axis2-eclipse-codegen-wizard和axis2-1.6.1-bin和axis2-1.6.1-war

    eclipse cdt wizard simple class

    **Eclipse CDT Wizard Simple Class** 是一个专为Eclipse集成开发环境(IDE)中的C++开发设计的向导模板。Eclipse CDT(C/C++ Development Tooling)是Eclipse平台上的一个插件,提供了丰富的C和C++开发工具集,包括...

    com.genuitec.eclipse.export.wizard_9.0.0.me201211011550.jar

    标题 "com.genuitec.eclipse.export.wizard_9.0.0.me201211011550.jar" 指的是一个特定版本的MyEclipse插件,该插件主要负责导出Web应用程序的WAR(Web ARchive)文件。在Java Web开发中,WAR文件是一种标准格式,...

    axis2-eclipse-codegen-wizard.zip

    Eclipse Codegen Wizard是Eclipse集成开发环境中的一个插件,专门用于帮助开发者自动生成 Axis2 Web服务客户端和服务器端的代码。 这个压缩包“axis2-eclipse-codegen-wizard.zip”显然包含了与Axis2开发相关的资源...

    com.genuitec.eclipse.export.wizard_9.0.0.me201203160414

    解决Myeclipse10破解中无法导出war包的,2分送了com.genuitec.eclipse.export.wizard_9.0.0.me201203160414.jar 注意下,不同的myeclipse版本使用的该jar包版本好像有区别,请注意 使用方法就是,将该jar包替换到...

    com.genuitec.eclipse.export.wizard_9.0.0.me201203160414.jar

    解决myeclipse10.6不能正常导出ear或war包问题,导出时出现security alert:...内附解决方法和jar包com.genuitec.eclipse.export.wizard_9.0.0.me201203160414.jar 关掉myeclipse10.6,替换文件,重启,亲测可用。

    axis2-eclipse-service-archiver-wizard.zip

    axis2-eclipse-service-archiver-wizard.zip

    axis2-eclipse-codegen-wizard-1.4.zip

    10. **学习资源**:Apache Axis2 和 Eclipse 插件社区提供了丰富的文档和教程,帮助开发者更好地理解和使用 Axis2 Eclipse 代码生成向导,解决开发过程中遇到的问题。 总之,"axis2-eclipse-codegen-wizard-1.4.zip...

    Axis2_Codegen_Wizard_1.4.0( eclipse中Webservice客户端生成插件)

    Axis2 Codegen Wizard 1.4.0 是一个专门针对Eclipse集成开发环境设计的插件,用于简化Web服务客户端的生成过程。在Web服务的世界里,开发人员经常需要调用远程服务,以便通过网络进行数据交换。这个插件正是为了解决...

    axis2-eclipse-codegen-wizard.zip与Axis2_Service_Archiver.zip

    总结来说,"axis2-eclipse-codegen-wizard.zip"和"Axis2_Service_Archiver.zip"是Apache Axis2 Web服务开发的得力助手,它们分别解决了代码生成和服务打包的问题,使得在Eclipse环境下进行Web服务开发变得更加便捷和...

    SWT(JFace) Wizard(Eclipse插件编程必备)

    在Eclipse插件开发中,Wizard 是一个重要的功能,它允许创建向导式对话框,引导用户按照步骤完成复杂的任务。 在上述代码中,`HotelReservation.java` 文件展示了一个简单的示例,演示了如何使用 SWT 和 JFace 创建...

    com.genuitec.eclipse.export.wizard_9.0.0.me201211011550 .zip

    Myeclipse10 war包时错误 替换修复文件 打开Myeclipse10安装目录下的pluging文件夹 将该文件... 将刚才的com.genuitec.eclipse.export.wizard_9.0.0.me201211011550.txt后缀名改会.jar 启动Myeclipse10即可打包war

    解决办法:Lp Wizard 10.5 导出的dra打开没有焊盘

    ### 解决办法:Lp Wizard 10.5 导出的dra文件打开后缺失焊盘的问题 在硬件开发过程中,经常会遇到各种各样的技术难题,其中之一就是在使用Lp Wizard 10.5导出的dra文件时,发现打开后的文件中焊盘信息丢失的问题。...

    com.genuitec.eclipse.export.wizard_9.0.0.me201211011550

    com.genuitec.eclipse.export.wizard_9.0.0.me201211011550

    Lp Wizard 10.5 导出的dra打开没有焊盘解决办法

    Lp Wizard 10.5 通过Allegro导出的dra打开没有焊盘,原因是Lp Wizard的设计很弱智,生成每个封装必须放在一个新目录里,而里面的PAD文件必须由Allegro通过padpath才能找到。网上的其他解决办法都不靠谱,不是没说...

    Eclipse 检查Next按钮的向导示例

    4. **事件处理**:在Eclipse中,你可以使用`Button`对象的`addSelectionListener()`方法添加监听器,当用户点击"Next"按钮时,监听器的`widgetSelected()`方法会被调用。在这个方法里,你可以进行额外的逻辑检查,如...

Global site tag (gtag.js) - Google Analytics