Jgoodies布局框架

上传人:M****1 文档编号:542126346 上传时间:2023-12-20 格式:DOCX 页数:9 大小:173.42KB
返回 下载 相关 举报
Jgoodies布局框架_第1页
第1页 / 共9页
Jgoodies布局框架_第2页
第2页 / 共9页
Jgoodies布局框架_第3页
第3页 / 共9页
Jgoodies布局框架_第4页
第4页 / 共9页
Jgoodies布局框架_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《Jgoodies布局框架》由会员分享,可在线阅读,更多相关《Jgoodies布局框架(9页珍藏版)》请在金锄头文库上搜索。

1、Jgoodies frs 白皮书1、 简介Jdis 的frm 框架可以协助你迅速、轻松布局和实现简要的Swinpnel 控件,oms 框架是一种易用的布局框架。 这个文档将会简介Goodi rms的框架和解析既有存在的布局系统,既有的设计目的是,怎么去套用Form 的模型和API和对比fr和其她布局系统的区别。Fors 的焦点在于以导向的形式,在例子中更像是pane控件的一部分。至少,在大多数状况下,她是个长方形布局。 上图使用了for 的布局内容简介om的布局Fom的创立Fo的工厂For 和其她的布局框架对比其她模式现存在的布局系统的缺陷我发现很对开发员面临既有布局系统带来的相似问题:这些布

2、局系统很难去理解和使用,她们不能体现出人们思想的布局模型,这些工具没有辨别关系,例如:一种布局管理器怎么去指定布局和填充容器。 源代码一般很难去阅读,你很难从代码里面理解布局是怎么样的,某些布局管理器是很难用的,例如,如果你想变化外观或者方案,只提供某些像素大小并没有提供某些属性来使用。某些布局系统是可以扩展的,但是却没有提供公共的布局,直到某些开发员挖掘某些细节才发现不能使用。设计目的我们但愿能尽快的构建布局,这个框架能覆盖0%的桌面应用,可以涉及负责的pane ,aplicatns和teams,可以协助使用者更快的构建和节省时间。Fom框架的源代码都是很容易读和容易理解,这个布局框架可以较

3、好的构建某些可视化的组件。它也不需要去学习和扩展它的代码。如何使用fors框架oms 框架有五个需要根据的原则:1、 使用网格作为一种简朴的布局,跟多的布局使用网格系统;2、 辨别关注点;3、 提供强有力的布局执行语音;4、 通过字符来简化代码;5、 在布局管理器上提供开发向导。)网格系统是一种去布局元素强有力、灵活、简朴的措施,专业的设计者每天工作都使用网格去寻找、衡量、和服用好的设计,看1、7、8、11页,你会发现诸多顾客接口程序员使用网格去布局或者描绘组件,这些工作是协调好纸和笔尚有至少的可视化工具。2)布局管理进程在一种类中涉及某些特性,指定一种布局,填充一种控件的panel 和设立一

4、种控件的范畴,在此外一种方面,诸多布局系统欠缺支持频繁的使用布局和不提供可在运用的公共设计,如果我们没有关怀,使用在多种场景的类和自由的结合使用等这些问题会被忽视,fors 框架用一类去描述fom中的网格,不可见的去填充fom,使用布局管理器仅仅为了一种工作,计算和设立compones的规格。3)在你填充你的pal之前和布局管理器设立你的组件规范之前你描述你的窗体布局,你可以在解析语音中指定你的网格布局因此阅读你的代码的人可以迅速的从你的代码总获取信息,修改也很容易。一种简朴的指定可以应用在许多组件中,例如,你可以指定你所有的labe 在列的右边。4)为了将来提高代码的可读性,在人们阅读中我们

5、容许在代码中具体阐明网格布局,简要的语音使用字符类型来执行。这种措施甚至可以用少量的代码来解析复杂的布局。5)fr框架在布局管理器中提供抽象类去统一u和风格,不是可视化的类建设驱动着form的布局,她们协助你理解网格。例如,ButnrBuilder类她创立按钮条和默认空白,DefaultFrBilt 创立带label列的panel和组件 ,且段落间隔相等。 工厂类运用builder 预制pane,BtonBudFacory 创立默认的按钮条。我们需要提到三个代码层:1、 布局类:布局管理、大小、线条和约束;2、 不可视的buider类去填充pel;3、 工厂类声明预制的布局和pal;我们所提供

6、的代码;1、 一种dmo应用;2、 一份资料;3、 一种较好的设计例子 Form 布局Frmoyu,是一种强大且灵活且严谨的布局管理器,组件的水平和垂直对齐都在一种强大的布局长方形框里面,每一种组件都出目前一种或者多种格子里面。明确一种form的布局,你需要明确她的列、行和选择列的组和行的组。每一种布局也仅仅是在行和列的组合中完毕。rmLoyot使用相似的AI,算法和执行都在列和行中。例子:基于forLoyot的特性我们跳到例子中去。我们将会一步步的学习具体的部分和学会怎么用至少的代码写出复杂的布局。例子(这个例子在组件加入form前创立了一种pnel,它带有个数据列和3个数据行)Foyout

7、 lau = ne omLaout( left:ref, u, 0lu, 4dlu,efaul, columns pref, 3l, p, dl, pef); / roCellConstats cc = new CellCostraints(); JPael pe = ew JPel(laout); anel.add(new Lbel(Label), cc. (, 1));panead(ew JTxtFild(), cc.w(3,, , )); paeadd(neJLabel(Lal), c.xy (, 3)); panel.dd(new JTexFid(), cc.y (3,3)); ane

8、l.add(nw Label(Lab3), ccy (, 5)); aneldd(new JTextied(), cc.xy (, 5); panel.add(ne JButton(/u22), cx (, 5);效果图例子2(使用pneluie 类,这个例子创立了一种在组件加入orm之前使用aneBuider去创立一种pane)FormLaoutlaout = nw Fomyot( rght:prf, dlu, 0dlu,4u, eult, / coms pf, 3d, pf,l, ref); / ros PnlBuderbuider= ne PanelBuildr(lyout); Celo

9、nstrit cc = newClConstaint(); bideradLel(e1, cc.xy (1, 1); udr.add(new TxtFld(), ccywh(3, 1,3, 1)); builderadae(Labe2, c.xy(, 3); budeadd(neextie(), c.y (, 3));builde.dLabl(Labl3, c.y(1,)); bilder.ad(newJetField(), cxy (, 5); buier.add(new JButto(/u2026),cc.x (5, ); Jrae jfn Fre();f.ad(bulder.etPane

10、l()); f.pak(); j.setiile(tue);效果图例子FomLayout lao= new FormLyout( rht:prf, 3lu,eault:row, ); efautormuilder bilder= nwefauBuler(layt); buder.etefltialogBorder(); bulder.setRoGrupingEnabld(rue); ellConsrains = n Cellontrin(); / In i aroach, we dd agap and ctom ow / he advtage o thi aprach s, ht wen ex

11、press / the ospcandcomme ara cell constris frely. / The disdvantage is themislignment ofth leaig lbl. / so ers heigt my b nconstentwith ote rws. bldraeSepaator(ingle Ct ow); builr.appen(Nam, ne TxField(); uierapndow(uiler.getLinappec();bilder.appdR(new Rowec(top:31dlu);Assuelinis4, gp i 3 bider.next

12、Lie(2); uilder.append(Come); uler.add(new ScrollPae(nw JTextFild()), ccxy(buildeetColm(), builereto(), ll, fl)); bld.nexin(); /Inthis pach, wapend a stndard row wih ga befoet. Te advntae is, tht the laig lal isaignedwl / Thedsadvantge is at the commentranow span mtipl cells and is slhtlyless flxil. / Alo th w hightmay e nconstnt with othr rows ulder.appendSeaaor(

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号