<?xml version="1.0" encoding="UTF-8"?> <page id="Layouts"> <main> <process id="receiverProcess"> <tablePopup id="complexSample" title="Layouts_ComplexSample" process="receiverProcess.new" enableType="none" containId="false" pageId="complexSample"> <enableExpression/> </tablePopup> </process> </main> <detail/> </page>
complexSample.xml
<?xml version="1.0" encoding="UTF-8"?> <pages> <customPage id="complexSample" title="Layouts_ComplexSample" className="com.vtradex.tms.client.layouts.HorizontalLayout.ComplexSample" onClose="refreshParent" width="900" height="550" /> </pages>
ComplexSample.java
package com.vtradex.tms.client.layouts.HorizontalLayout; import java.util.Date; import java.util.HashMap; import java.util.Map; import com.google.gwt.user.client.rpc.IsSerializable; import com.google.gwt.user.client.ui.HTML; import com.google.gwt.user.client.ui.VerticalPanel; import com.gwtext.client.core.Margins; import com.gwtext.client.core.RegionPosition; import com.gwtext.client.widgets.BoxComponent; import com.gwtext.client.widgets.HTMLPanel; import com.gwtext.client.widgets.Panel; import com.gwtext.client.widgets.TabPanel; import com.gwtext.client.widgets.grid.PropertyGridPanel; import com.gwtext.client.widgets.layout.AccordionLayout; import com.gwtext.client.widgets.layout.BorderLayout; import com.gwtext.client.widgets.layout.BorderLayoutData; import com.gwtext.client.widgets.layout.FitLayout; import com.vtradex.thorn.client.template.BaseCustomPopupTemplate; /** * @Author : yc.min * ComplexSample */ public class ComplexSample extends BaseCustomPopupTemplate implements IsSerializable { private transient int height = 500; private transient int width = 900; public void draw(final VerticalPanel content){ Panel panel = new Panel(); panel.setBorder(false); panel.setPaddings(15); panel.setLayout(new FitLayout()); //add panel.setWidth(width+"px"); panel.setHeight(height+"px"); panel.setTitle("i am panel 1"); Panel borderPanel = new Panel(); borderPanel.setLayout(new BorderLayout()); //add north panel //raw html BoxComponent northPanel = new BoxComponent(); northPanel.setEl(new HTML("<p>north - generally for menus, toolbars" + " and/or advertisements</p>").getElement()); northPanel.setHeight(32); borderPanel.add(northPanel, new BorderLayoutData(RegionPosition.NORTH)); //add south panel Panel southPanel = new HTMLPanel ("<p>south - generally for informational stuff," + " also could be for status bar</p>"); southPanel.setHeight(100); southPanel.setCollapsible(true); southPanel.setTitle("South"); BorderLayoutData southData = new BorderLayoutData(RegionPosition.SOUTH); southData.setMinSize(100); southData.setMaxSize(200); southData.setMargins(new Margins(0, 0, 0, 0)); southData.setSplit(true); borderPanel.add(southPanel, southData); //add east panel Panel eastPanel = new Panel(); eastPanel.setTitle("East Side"); eastPanel.setCollapsible(true); eastPanel.setWidth(225); eastPanel.setLayout(new FitLayout()); BorderLayoutData eastData = new BorderLayoutData(RegionPosition.EAST); eastData.setSplit(true); eastData.setMinSize(175); eastData.setMaxSize(400); eastData.setMargins(new Margins(0, 0, 5, 0)); borderPanel.add(eastPanel, eastData); TabPanel tabPanel = new TabPanel(); tabPanel.setBorder(false); tabPanel.setActiveTab(1); Panel tabOne = new Panel(); tabOne.setHtml ("<p>A TabPanel component can be a region.</p>"); tabOne.setTitle("A Tab"); tabOne.setAutoScroll(true); tabPanel.add(tabOne); PropertyGridPanel propertyGrid = new PropertyGridPanel(); propertyGrid.setTitle("Property Grid"); Map source = new HashMap(); source.put("(name)", "Properties Grid"); source.put("grouping", Boolean.FALSE); source.put("autoFitColumns", Boolean.TRUE); source.put("productionQuality", Boolean.FALSE); source.put("created", new Date()); source.put("tested", Boolean.FALSE); source.put("version", new Float(0.1f)); source.put("borderWidth", new Integer(1)); propertyGrid.setSource(source); tabPanel.add(propertyGrid); eastPanel.add(tabPanel); final AccordionLayout accordion = new AccordionLayout(true); Panel westPanel = new Panel(); westPanel.setTitle("West"); westPanel.setCollapsible(true); westPanel.setWidth(200); westPanel.setLayout(accordion); Panel navPanel = new Panel(); navPanel.setHtml ("<p>Hi. I'm the west panel.</p>"); navPanel.setTitle("Navigation"); navPanel.setBorder(false); navPanel.setIconCls("forlder-icon"); westPanel.add(navPanel); Panel settingsPanel = new Panel(); settingsPanel.setHtml ("<p>Some settings in here.</p>"); settingsPanel.setTitle("Settings"); settingsPanel.setBorder(false); settingsPanel.setIconCls("settings-icon"); westPanel.add(settingsPanel); BorderLayoutData westData = new BorderLayoutData(RegionPosition.WEST); westData.setSplit(true); westData.setMinSize(175); westData.setMaxSize(400); westData.setMargins(new Margins(0, 5, 0, 0)); borderPanel.add(westPanel, westData); TabPanel centerPanel = new TabPanel(); centerPanel.setDeferredRender(false); centerPanel.setActiveTab(0); Panel centerPanelOne = new HTMLPanel(); centerPanelOne.setHtml( "<p><b>Done reading me? Close me by clicking the X in " + "the top right corner.</b></p>\n" + "<p>" + getShortBogusMarkup() + "</p>\n" + "<p>" + getShortBogusMarkup() + "</p>\n" + "<p>" + getShortBogusMarkup() + "</p>\n" ); centerPanelOne.setTitle("Close Me"); centerPanelOne.setAutoScroll(true); centerPanelOne.setClosable(true); centerPanel.add(centerPanelOne); Panel centerPanelTwo = new HTMLPanel(); centerPanelTwo.setHtml( "<p>My closable attribute is set to false so you can't close me." + " The other center panels " + "can be closed.</p>\n" + "<p>The center panel automatically grows to fit the " + "remaining space in the container " + "that isn't taken up by the border regions.</p>\n" + "<hr>\n" + "<p>" + getShortBogusMarkup() + "</p>\n" + "<p>" + getShortBogusMarkup() + "</p>\n" + "<p>" + getShortBogusMarkup() + "</p>\n" + "<p>" + getShortBogusMarkup() + "</p>\n"); centerPanelTwo.setTitle("Center Panel"); centerPanelTwo.setAutoScroll(true); centerPanel.add(centerPanelTwo); borderPanel.add(centerPanel, new BorderLayoutData(RegionPosition.CENTER)); panel.add(borderPanel); // new Viewport(panel); content.add(panel); } private static String getShortBogusMarkup() { return "<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. " + "Sed metus nibh, sodales a, porta at, vulputate eget, dui. " + "In pellentesque nisl non sem. Suspendisse nunc sem, pretium eget, " + "cursus a, fringilla vel, urna."; } }
效果预览:
相关推荐
ADF培训_12_Building_layouts_2009
标题中的"OA1500_Layouts_original_.pcb_"暗示了这是一个关于OA1500设备的原始布局设计文件,其中".pcb"是印刷电路板(Printed Circuit Board)的文件扩展名,通常用于表示电子产品的电路板设计。PCB设计是电子工程...
Motivation Example Our Solution——Maze Demo 开发生成的障碍之一是内存布局操作。大量内存损坏漏洞(例如堆溢出和UAF)只能在特定的内存布局中使用。在实践中,它需要人工操作内存布局。因此,自动内存布局操作是...
微信面板程序的界面布局demo,来源于网络,很漂亮
ST Nucleo-64开发板原理图——转载自官网(官方开源资料)...Schematic.pdf/jcr:content/translations/en.MB1136-DEFAULT-C04_Schematic.pdf
Thymeleaf Examples: Layouts This is an example project containing code used in the "Thymeleaf Layouts" tutorial. The project was created using Spring MVC 4 Quickstart Maven archetype: ...
Construction of complex layouts on Android, major layouts available on the platform, as nest them to permit more complex graphical structures are used and how to extend them to give more ...
Android-Layouts part
在Android开发中,窗口布局(layouts)是构建用户界面的核心元素。它们决定了应用程序屏幕上元素的排列方式和相互关系。本篇文章将深入探讨Android布局中的三种主要控件:RelativeLayout、GridLayout和LinearLayout...
SharePoint 2013 页面访问,Url中间多一段_layouts15start#
- layouts_menu_side_mini.html:侧边栏迷你模式,节省空间,适用于窄屏设备或需要更多工作区的情况。 - layouts_menu_side_full.html:全宽侧边栏布局,提供更多导航选项和更详细的分类。 这些布局文件展示了如何...
Zend_Layout::startMvc(array(‘layoutPath’ => USVN_LAYOUTS_DIR)); $front->setRequest(new USVN_Controller_Request_Http()); $front->throwExceptions(true); $front->setBaseUrl($config->url->base); $...
Zend_Layout::startMvc(array(‘layoutPath’ => USVN_LAYOUTS_DIR)); $front->setRequest(new Zend_Controller_Request_Http()); $front->throwExceptions(true); $front->setBaseUrl($config->url->base); $...
这是一个ppt给我们介绍了一下java FX的layout
layouts 根目录下的所有文件都属于个性化布局文件,可以在页面组件中利用 layout 属性来引用。 pages文件下组件的layout属性值为layout文件下的所对应的布局组件的名称 请确保在布局文件里面增加 <nuxt> 组件用于...
_config.yml css index.html _layouts _posts λ heroku create --buildpack git://github.com/bacongobbler/heroku-buildpack-jekyll.git Git remote heroku added λ git push heroku master ----- > Fetching ...
Data Page Layouts for Relational Databases Data Page Layouts for Relational Databases
- 将解压得到的jar文件(如org.eclipse.zest.core_1.3.0.v20110221-2050.jar和org.eclipse.zest.layouts_1.1.0.v20110425-2050.jar)复制到`plugins`目录。 - 重启Eclipse,插件就会自动安装并启用。 - 在Eclipse...
使用的技术 ……显然作为模板语言编写CSS 用于转储和填充JavaScript 的供应商前缀CSS 用于编译Sass和JavaScript资产和项目结构src/ _components/ All UI partials _data/ Eleventy data files _layouts/ Base page ...
标题中的“Keyboard_Layouts”指的是键盘布局,这通常是指计算机键盘上键位的排列方式。不同的语言和用户需求会有不同的键盘布局,例如QWERTY、DVORAK、COLEMAK等。这个集合可能包含了多种键盘布局的设计或者配置...