XWorker
简介
特点
下载

 面向事物
面向事物的概念
面向事物和面向对象对比
面向事物的哲学

 示例
事物的创建过程 
SWT
WEB
代码生成
YahooYUI

 关于
协议
联系我们

 

 SWT编程演示

 SWT事物

    在XWorker中SWT事物定义在ui:local:swt下,SWT事物基本定义了SWT下所有控件,可以在XWorker中通过编辑事物的方法来编写SWT的应用程序。

WEB浏览器的示例

   在XWorker系统中SWT的例子很多,因为XWorker平台本身(事物管理器)就是通过SWT事物编写的。

   这里就不详细说明如何编辑WEB浏览器了,下面列出一些编辑过程中的截图,以及程序运行的效果等。

Control的编辑表单

Composite的编辑表单

这个是GridData的编辑表单

这个是TabFolder的编辑表单

事件编辑的表单

    编辑完毕后,Web浏览器事物使用XML表示大致如下:

<Display name="WebBrowser">
    <Shell name="shell" text="&quot;Web Browser&quot;" RESIZE="true">
        <FillLayout name="shellFillLayout"/>
        <Composite name="mainComposite">
            <GridLayout name="shellGridLayout"/>
            <Composite name="addressComposite">
                <GridData style="FILL_HORIZONTAL" name="addressCompositeGridData"/>
                <GridLayout name="addressCompositeGridLayout" numColumns="2"/>
                <ToolBar name="buttonToolBar" FLAT="true">
                    <ToolItem text="&quot;返回&quot;" name="backButton">
                        <listeners>
                            <Listener name="commonButtonSelection">
                                <GroovyAction name="script" throwException="false" code="..."/>
                            </Listener>
                        </listeners>
                    </ToolItem>
                    <ToolItem text="&quot;前进&quot;" name="forwardButton">
                        <listeners>
                            <Listener ref="commonButtonSelection" name="forwardButtonSelection"/>
                        </listeners>
                    </ToolItem>
                    <ToolItem text="&quot;停止&quot;" name="stopButton">
                        <listeners>
                            <Listener ref="commonButtonSelection" name="stopButtonSelection"/>
                        </listeners>
                    </ToolItem>
                    <ToolItem text="&quot;刷新&quot;" name="refreshButton">
                        <listeners>
                            <Listener ref="commonButtonSelection" name="refreshButtonSelection"/>
                        </listeners>
                    </ToolItem>
                    <ToolItem text="&quot;Go&quot;" name="goButton">
                        <listeners>
                            <Listener ref="commonButtonSelection" name="goButtonSelection"/>
                        </listeners>
                    </ToolItem>
                </ToolBar>
                <Text name="addressText" BORDER="true">
                    <GridData style="FILL_HORIZONTAL" name="addressTextGridData"/>
                    <listeners>
                        <Listener name="addressTextDefaultSelection" type="DefaultSelection">
                            <GroovyAction name="script" throwException="false" code="..."/>
                        </Listener>
                    </listeners>
                </Text>
            </Composite>
            <CTabFolder name="mainTabFolder" FLAT="true" BORDER="true">
                <GridData style="FILL_BOTH" name="mainTabFolderGridData"/>
                <CTabItem text="&quot;blank&quot;" name="firstBrowser" CLOSE="true">
                    <Browser name="browser">
                        <GridData style="FILL_BOTH" name="browseGridData"/>
                    </Browser>
                </CTabItem>
                <CTabItem text="&quot;  &quot;" name="addNewTabItem"/>
                <listeners>
                    <Listener name="mainTabFolderSelection">
                        <GroovyAction name="script" code="..."/>
                    </Listener>
                </listeners>
            </CTabFolder>
            <Composite name="statusComposite">
                <GridLayout marginHeight="0" name="statusCompositeGridLayout" numColumns="2"/>
                <GridData style="FILL_HORIZONTAL" name="statusCompositeGridData"/>
                <Label text="&quot;                               &quot;" name="statusLabel">
                    <GridData style="FILL_HORIZONTAL" name="statusLabelGridData"/>
                </Label>
                <ProgressBar SMOOTH="false" name="progressBar" INDETERMINATE="false" BORDER="false"/>
            </Composite>
            <Code name="Init" throwException="false" code="..."/>
            <actions name="scripts">
                <GroovyAction name="openUrl" throwException="false" code="..."/>
            </actions>
        </Composite>
    </Shell>
</Display>

     以上XML中省略了那些事件的处理代码,Web浏览器运行后截图如下:

 

通过SWT菜单运行程序

实际运行效果图

 

Copyright ©  2007-2008 XWorker.org  版权所有

沪ICP备08000575号