專利名稱::網(wǎng)頁(yè)應(yīng)用程序產(chǎn)生器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明是關(guān)于網(wǎng)頁(yè)編寫工具,其特別是關(guān)于利用現(xiàn)行視窗口應(yīng)用程序發(fā)展工具來(lái)實(shí)現(xiàn)網(wǎng)頁(yè)應(yīng)用程序產(chǎn)生器,提供以拖曳控件組件及Form-based方式,來(lái)制作出網(wǎng)頁(yè)應(yīng)用程序。公知網(wǎng)頁(yè)的制作方式中,最傳統(tǒng)方式是直接使用文本編輯器(texteditor)編輯由DHTML所組成的網(wǎng)頁(yè)程序,但是得花好長(zhǎng)時(shí)間,才能以HTML語(yǔ)言撰寫出略復(fù)雜的程序接口。近來(lái),一些圖形化的網(wǎng)頁(yè)制作工具,雖提供較為便利的操作,但都是以content-based方式制作網(wǎng)頁(yè)應(yīng)用(webapplication),雖能在較快速的時(shí)間內(nèi)制作完成一網(wǎng)頁(yè)程序,然而使用這些公知網(wǎng)頁(yè)制作工具的使用者,最好是非常熟悉DHTML語(yǔ)言,否則往往受限于公知網(wǎng)頁(yè)制作工具的制作網(wǎng)頁(yè)的能力,而無(wú)法盡其發(fā)揮使用者要在網(wǎng)頁(yè)執(zhí)行所展現(xiàn)的功能,而且所開(kāi)發(fā)完成的網(wǎng)頁(yè)應(yīng)用系統(tǒng),由于操作性可能不夠完善,使得在操作網(wǎng)頁(yè)應(yīng)用系統(tǒng)時(shí),得頻頻換頁(yè)、拉scrollbar…等,且如果使用到ActiveControl或JavaApplet編輯的互動(dòng)性程序接口時(shí),其出現(xiàn)既不容易維護(hù),下載時(shí)間又久等缺點(diǎn)。另一方面,對(duì)于使用者需花費(fèi)精力熟悉DHTML語(yǔ)言,這也是一種負(fù)擔(dān)及時(shí)間成本的消耗。本發(fā)明目的是提供在圖形用戶接口視窗作業(yè)環(huán)境,以類似如VisualBasic軟件開(kāi)發(fā)環(huán)境進(jìn)行網(wǎng)頁(yè)應(yīng)用程序的開(kāi)發(fā)。為解決上述目的,本發(fā)明提供一種網(wǎng)頁(yè)應(yīng)用程序產(chǎn)生器,其包括復(fù)數(shù)個(gè)控件的工具列,用于提供一使用者選取及編輯該復(fù)數(shù)個(gè)控件,其中該工具列的每一個(gè)控件及每一個(gè)該經(jīng)選取及編輯后的控件,都是以一GUI表述所組成;一個(gè)轉(zhuǎn)譯器(translator),用以將每一個(gè)以GUI表述的控件轉(zhuǎn)換為對(duì)應(yīng)的中間表述(intermediaterepresentation);一個(gè)表述轉(zhuǎn)換表(presentationmappingtable),用以指定如何將中間表述轉(zhuǎn)換為DHTML的規(guī)則,使得以GUI表述的控件依據(jù)該表述轉(zhuǎn)換表轉(zhuǎn)換為對(duì)應(yīng)以DHTML表述的控件;一個(gè)邏輯動(dòng)作轉(zhuǎn)換表(logicalpartmappingtable),用以指定如何將中間表述轉(zhuǎn)換為對(duì)應(yīng)至一事件處理機(jī)(eventhandler)及產(chǎn)生一指令(statement)的規(guī)則;一個(gè)生成器(generator),用以將每一個(gè)以GUI表述的控件,依據(jù)該表述轉(zhuǎn)換表及該邏輯動(dòng)作轉(zhuǎn)換表,生成對(duì)應(yīng)于每一個(gè)控件的DHTML表述及其所結(jié)合的對(duì)應(yīng)的事件處理機(jī)(eventhandler)及指令(statement)。附圖簡(jiǎn)單說(shuō)明圖1為本發(fā)明的構(gòu)架圖。圖2為依據(jù)本發(fā)明,其利用VirtualBasic環(huán)境完成較佳實(shí)施例的產(chǎn)生器,在一計(jì)算機(jī)執(zhí)行的狀態(tài)示意圖。圖3為使用本發(fā)明制作一客戶基本資料查詢的網(wǎng)頁(yè)應(yīng)用程序?qū)嵤├?。圖中10轉(zhuǎn)譯器11生成器12表述轉(zhuǎn)換表13邏輯動(dòng)作轉(zhuǎn)換表14GUI表述控件文件15中間表述控件文件16DHTML應(yīng)用程序文件20工具列為使熟悉該項(xiàng)技術(shù)人士了解本發(fā)明的目的、特征及功效,由下述具體實(shí)施例,并配合所附的附圖,對(duì)本發(fā)明詳細(xì)說(shuō)明如下依據(jù)本發(fā)明的產(chǎn)生器,其可以利用選擇現(xiàn)行類似如VisualBasic及Delphi的視窗應(yīng)用程序發(fā)展工具(windowapplicationdevelopmenttools)來(lái)編寫(coding)產(chǎn)生器的程序代碼。因此,本發(fā)明所提供的復(fù)數(shù)個(gè)控件(如圖2工具列20所示),是先以GUI表述的方式定義每一個(gè)控件的實(shí)質(zhì)內(nèi)容。本發(fā)明采用GUI表述的原因,是配合視窗應(yīng)用程序發(fā)展工具,其被稱為整合式開(kāi)發(fā)環(huán)境(integrateddevelopmentenvironment),該發(fā)展工具使用檔案形式以儲(chǔ)存表述格式(formrepresentation)的內(nèi)容,例如在VisualBasic(以下簡(jiǎn)稱VB)及Delphi的窗口應(yīng)用程序發(fā)展工具下,GUI表述分別是指VB表述及Delphi表述。例如使用于VB及Delphi的卷標(biāo)控件(label)的范例,其表述如下圖1為本發(fā)明的構(gòu)架圖。圖1的GUI表述控件文件14,其儲(chǔ)存的內(nèi)容是為以GUI表述的復(fù)數(shù)個(gè)控件,其中該復(fù)數(shù)個(gè)控件是使用者執(zhí)行圖2的產(chǎn)生器,經(jīng)選取及編輯工具列20中的控件,來(lái)制作一網(wǎng)頁(yè)應(yīng)用程序。轉(zhuǎn)譯器(translator)10將GUI表述控件文件14的每一個(gè)控件轉(zhuǎn)換為中間表述控件文件15。生成器(generator)11依據(jù)表述轉(zhuǎn)換表(presentationmappingtable)12及邏輯動(dòng)作轉(zhuǎn)換表(logicalpartmappingtable)13,將中間表述控件文件15生成為DHTML應(yīng)用程序文件16,并且DHTML應(yīng)用程序文件16結(jié)合對(duì)應(yīng)的事件處理機(jī)(eventhandler)及指令(statement)。其中表述轉(zhuǎn)換表12具有如何將中間表述轉(zhuǎn)換為DHTML的復(fù)數(shù)個(gè)規(guī)則(rules),其使得以GUI表述的控件依據(jù)該表述轉(zhuǎn)換表12轉(zhuǎn)換為對(duì)應(yīng)以DHTML表述的控件。其中邏輯動(dòng)作轉(zhuǎn)換表13具有如何將中間表述轉(zhuǎn)換為對(duì)應(yīng)至一事件處理機(jī)(eventhandler)及產(chǎn)生一指令(statement)的規(guī)則(rules)。圖2為依據(jù)本發(fā)明,其利用VisualBasic環(huán)境完成較佳實(shí)施例的產(chǎn)生器,在一計(jì)算機(jī)執(zhí)行的狀態(tài)示意圖。圖2工具列20的復(fù)數(shù)個(gè)控件,其可由使用者選取及編輯所選取的控件內(nèi)容,在最短時(shí)間內(nèi)就能以拖曳方式制作出網(wǎng)頁(yè)應(yīng)用程序。本發(fā)明的復(fù)數(shù)個(gè)控件能夠涵蓋DHTML定義下的所有網(wǎng)頁(yè)應(yīng)用程序。由于Web-based的應(yīng)用軟件,主要用作為商業(yè)模式的網(wǎng)絡(luò)解決方案(Thee-SolutionOfBusinessModel),所以常用的控件經(jīng)常是重復(fù)使用,因此本發(fā)明將許多常用的組件設(shè)定成為固定的"格式"。節(jié)省下許多程序設(shè)計(jì)師的使用者在發(fā)展系統(tǒng)的時(shí)間,但是也考慮到許多滿足不同使用者的需求時(shí)所需要的彈性,因此本發(fā)明提供一組完善的控件,其如圖2在工具列20所顯示的復(fù)數(shù)個(gè)控件,分別說(shuō)明如下.卷標(biāo)(label)控件用來(lái)顯示文字,使用者不能編輯修改內(nèi)容,其類同VisualBasic中的Label。.文本框(textbox)控件由使用者或窗體所設(shè)定的資料,除繼承VisualBasic"TextBox"屬性之外,并新增屬性“UniRequired",以定義此字段是否必須輸入資料。.復(fù)選框(checkbox)控件顯示一個(gè)項(xiàng)目的選擇狀態(tài),其繼承VisualBasic"CheckBox"的屬性。.選項(xiàng)框(optionbox)控件顯示在一個(gè)群組中所選擇的項(xiàng)目狀態(tài),只能選擇群組中的一個(gè)項(xiàng)目,不能重復(fù)選取,其繼承VisualBasic"OptionButton"的屬性。.列表框(listbox)控件列表式方框選單,顯示一個(gè)目錄的值,讓使用者選擇一個(gè)或多個(gè),除繼承VisualBasic"ListBox"的屬性外,并新增屬性"ItemData",可在該新增屬性中輸入選單數(shù)據(jù),每筆數(shù)據(jù)間以"空白"或"分號(hào)"做分隔。.組合框(combobox)控件下拉式選單,繼承VisualBasic"ComboBox"的屬性,利用"ItemData"屬性輸入選單數(shù)據(jù)。.群定位(sstab)控件在單一的窗體中提供一個(gè)能呈現(xiàn)數(shù)個(gè)對(duì)話方框或信息窗口在一個(gè)使用相同接口的簡(jiǎn)易方法。在SSTab控件中提供一個(gè)tab的群組,對(duì)其他的控件來(lái)說(shuō),每一個(gè)tab就像是一個(gè)Container。同一時(shí)間中只有一個(gè)tab是活躍的,顯示其所包含的控件給使用者看,其余tab的控件都會(huì)隱藏起來(lái),其繼承VisualBasic"SSTab"的屬性。.框(frame)控件提供一個(gè)可證明為同一群組的控件。舉例來(lái)說(shuō),可以使用框(frame)控件來(lái)細(xì)分一個(gè)窗體—區(qū)隔OptionButton控件的群組。.命令鈕(commandbutton)控件使用在開(kāi)始、中斷或結(jié)束的一個(gè)程序,可用來(lái)呼叫某個(gè)事件、函數(shù)或方法,其繼承VisualBasic"CommandButton"的屬性。.復(fù)選框(checkbox)控件顯示一個(gè)項(xiàng)目的選擇狀態(tài),其繼承VisualBasic"CheckBox"的屬性。.柵格(grid)控件其就像是一個(gè)二維數(shù)組的TextBox,用來(lái)顯示及運(yùn)算表格的資料,它能夠完整地做排序、合并及格式化表格內(nèi)的字符串,其繼承MSDataGridLib.DataGrid.的屬性。.樹(shù)狀(treeview)控件顯示一個(gè)有等級(jí)制度的結(jié)點(diǎn)對(duì)象,每一個(gè)結(jié)點(diǎn)都是一個(gè)卷標(biāo)(Label)及非必須的位圖層組成。一個(gè)treeview是典型的過(guò)去層顯示在一個(gè)文件的標(biāo)題,加入一個(gè)索引、檔案及在磁盤中的目錄,或其它任何種類可能有用的信息顯示出一個(gè)層級(jí),其繼承MSComctlLib"TreeView"的屬性。.選擇列(selectedlist)控件可多選的交換性方框,右邊為被選取的數(shù)據(jù),其在"ItemData"屬性中輸入左邊選項(xiàng)數(shù)據(jù),每筆數(shù)據(jù)間以"空白"或"分號(hào)"做分隔,及在"ItemData2"屬性中輸入右邊選項(xiàng)數(shù)據(jù),每筆數(shù)據(jù)間以"空白"或"分號(hào)"做分隔。.排序列(sortlist)控件數(shù)據(jù)排序方框,其在"ItemData"屬性中輸入選單數(shù)據(jù),每筆數(shù)據(jù)間以"空白"或"分號(hào)"做分隔。.超級(jí)鏈接(hyperlink)控件超級(jí)鏈接,為文字做超級(jí)鏈接用,其提供"Caption"以輸入要顯示的文字及"UniURL"為超級(jí)鏈接的路徑,例如輸入"http//www.abc.com.tw/"絕對(duì)路徑。.文件說(shuō)明(menureference)控件透過(guò)"菜單編輯器(MenuEditor)"定義Menubar給所欲制作的網(wǎng)頁(yè)(webpage)。.條件框(conditionalframe)控件條件式的Frame控件,在條件成立時(shí)才會(huì)出現(xiàn)此Frame及同一群組的Control,其提供"UniExpression"屬性中可設(shè)定條件表達(dá)式,它將會(huì)判斷其值為True或False。.日歷(calendarbox)控件輸入日期的文字框,可呼叫月歷供User點(diǎn)選輸入。.執(zhí)行式文本框(advancedtextbox)控件提供查詢的文字框,取TextBox中的值至后端執(zhí)行后,以所設(shè)定的方式顯示結(jié)果。.輸入html(inlineHTML)控件提供使用者可直接在檔案中自行加入HTML的程序代碼。.結(jié)果表(resulttable)控件其用法與柵格控件相似,但結(jié)果表控件新增了第一筆、上一筆、下一筆、最后一筆及筆數(shù)的命令鈕控件。.加載html(externalHTML)控件在執(zhí)行時(shí)加載(Include)另一程序文件至程序中。.查詢條件框(queryconditionframe)控件其功能與框控件相同,但新增四個(gè)按鈕查詢按鈕、清除按鈕、新增按鈕、離開(kāi)按鈕。圖3顯示使用本發(fā)明制作一客戶基本資料查詢的網(wǎng)頁(yè)應(yīng)用程序?qū)嵤├S蓤D3的網(wǎng)頁(yè)應(yīng)用程序?qū)嵤├@示出,使用者由工具列20中選取一個(gè)框控件、三個(gè)文本框控件及四個(gè)命令鈕控件。以下所示圖3的框控件、其中一個(gè)的文本框控件,其以VB表述作為GUI表述的實(shí)施例框控件的VB表述實(shí)施例<prelisting-type="program-listing"><![CDATA[Beginopcontrols.QueryConditionFrameQueryFramelHeight=2295Left=720Top=360Width=6135Caption="客戶基本資料查詢"UniAccessKey=""UniDataTarget="MajorFrame"UniOperationTarget="MajorFrame"UniOutputStyle="Frame"UniProgID=""UniCommand=""UniActionURL=""UniQueryStrings=""UniDialogProp=""UniDoesSubmitUniMSG="Yes"Beginopcontrols.LabelLabel1Height=285Left=360Top=480Width=975Alignment=0Caption="客戶編號(hào)"UniAccessKey=""EndBeginopcontrols.LabelLabel2Height=285Left=360Top=1080Width=855Alignment=0Caption="客戶姓名"UniAccessKey=""EndBeginopcontrols.LabelLabel3Height=285Left=360Top=1680Width=855Alignment=0Caption="入會(huì)日期"UniAccessKey=""EndEnd]]></pre>其中一個(gè)的文本框控件的VB表述實(shí)施例Beginopcontrols.TextBoxCustNameHeight=375Left=1440TabIndex=2ToolTipText="例如張三"Top=960Width=3255Text=""UniAccessKey=""UniRequired=0’FalseEditable=-1’TrueEnd上述圖3的客戶基本資料查詢網(wǎng)頁(yè)應(yīng)用程序的控件,其以上述VB表述實(shí)施例作為GUI表述,經(jīng)轉(zhuǎn)譯器10轉(zhuǎn)譯為如下的中間表述實(shí)施例<prelisting-type="program-listing"><![CDATA[<XqueryConditionFrameName="QueryFramel"Height="2295"Left="720"TabIndex="3"TabStop="0"Top="360"Width="6135"Caption="客戶基本資料查詢"UniAccessKey=""UniDataTarget="MajorFrame"UniOperationTarget="MajorFrame"UniOutputStyle="Frame"UniProgID=""UniCommand=""UniActionURL=""UniQueryStrings=""UniDialogProp=""UniDoesSubmitUniMSG="Yes"><XLabelName="Label1"Height="285"Left="360"Top="480"Width="975"Alignment="0"Caption="客戶編號(hào)"UniAccessKey=""/><XLabelName="Label2"Height="285"Left="360"Top="1080"Width="855"Alignment="0"Caption="客戶姓名"UniAccessKey=""/><XLabelName="Label3"Height="285"Left="360"Top="1680"Width="855"Alignment="0"Caption="入會(huì)日期"UniAccessKey=""/><XTextBoxName="CustNo"Height="375"Left="1440"TabIndex="1"ToolTipText="例如A1234567"Top="360"Width="3255"Text=""UniAccessKey=""UniRequired="0"Editable="-1"/><XTextBoxName="CustName"Height="375"Left="1440"TabIndex="2"ToolTipText="例如張三"Top="960"Width="3255"Text=""UniAccessKey=""UniRequired="0"Editable="-1"/><XTextBoxName="StartDate"Height="375"Left="1440"TabIndex="3"ToolTipText="例如2000/11/12"Top="1560"Width="3255"Text=""UniAccessKey=""UniRequired="0"Editable="-1"/></XQueryConditionFrame>]]></pre>上述中間表述實(shí)施例,經(jīng)生成器12生成對(duì)應(yīng)圖3客戶基本資料查詢網(wǎng)頁(yè)應(yīng)用程序的DHTML程序?qū)嵤├缦?lt;prelisting-type="program-listing"><![CDATA[<!--BeginQueryConditionFrame--><TABLEBORDER=0ID=QueryFramelACCESSKEY=""STYLE="positionabsolute;height153px;left24px;top48px;width345px;"CELLSPACING=0CELLPADDING=0><TR><TDHEIGHT=20WIDTH=10CLASS=cSYS_FrameLeft>&nbsp;</TD><TDNOWRAPCLASS=cSYS_FrameCaptionBG><SPANCLASS=cSYS_FrameCaption>客戶基本資料查詢</SPAN></TD><TDCLASS=cSYS_FrameRightWIDTH="*">&nbsp;</TD></TR><TR><TDCLASS=cSYS_FrameBodyCOLSPAN=3HEIGHT="*">&nbsp;<SPANID=Label1ACCESSKEY=""CLASS=cSYS_LabelSTYLE="positionabsolute;left24px;top32px;">客戶編號(hào)</SPAN><INPUTTYPE=TEXTID=CustNoTABINDEX=1ACCESSKEY=""TITLE="例如A1234567"CHECKED=0CLASS=cSYS_TextBoxSTYLE="positionabsolute;width217px;left96px;top24px;"VALUE=""ONCHANGE="textBox_onChange(this);"ONBLUR="textBox_onChange(this);"ONMOUSEOUT="textBox_onChange(this);"><INPUTTYPE=TEXTID=CustNameTABINDEX=2ACCESSKEY=""TITLE="例如張三"CHECKED=0CLASS=cSYS_TextBoxSTYLE="positionabsolute;width217px;left96px;top64px;"VALUE=""ONCHANGE="textBox_onChange(this);"ONBLUR="textBox_onChange(this);"ONMOUSEOUT="textBox_onChange(this);"></TD></TR></TABLE><TABLEBORDER=0CELLSPACING=0CELLPADDING=0STYLE="positionabsolute;top48px;left373px;height153px;width60px;"><TR><TDALIGN=CENTERVALIGN=TOP><INPUTTYPE=BUTTONID=QueryFrame1_QueryCLASS=cSYS_QueryButtonVALUE="查詢"ONCLICK="QueryFrame1_Cmd_onClick(’Query’);"><INPUTTYPE=BUTTONID=QueryFrame1_ClearCLASS=cSYS_QueryButtonVALUE="清除"ONCLICK=QueryFrame1_Cmd_onClick(’Clear’);"><INPUTTYPE=BUTTONID=QueryFrame1_ewCLASS=cSYS_QueryButtonVALUE="新增"ONCLICK="QueryFrame1_Cmd_onClick(’New’);"><BR><BR><INPUTTYPE=BUTTONID=QueryFrame1_ExitCLASS=cSYS_QueryButtonVALUE="離開(kāi)"ONCLICK="QueryFrame1_Cmd_onClick(’Exit’);"></TD></TR></TABLE>&nbsp;<!--EndQueryConditionFrame-->]]></pre>生成器12所依據(jù)的表述轉(zhuǎn)換表12,以生成對(duì)應(yīng)圖3客戶基本資料查詢網(wǎng)頁(yè)應(yīng)用程序的DHMTL程序?qū)嵤├?,該表述轉(zhuǎn)換表12實(shí)施例如下<prelisting-type="program-listing"><![CDATA[<QueryConditionFrameFamily="Frame"><Presentation><DHTML><![CDATA[<TABLEBORDER=0ID=$NAME$TITLE="$TOOLTIP$"STYLE="positionabsolute;height$HEIGHT$px;width$WIDTH$px;left$LEFT$px;top$TOP$px;"CELLSPACING=0CELLPADDING=0><TR>@GetFrameCaptionLine("$CAPTION$")@$CONTAINEE$</TR></TABLE><TABLEBORDER=0CELLSPACING=0CELLPADDING=0STYLE="positionabsolute;top$TOP$px;left@MinusFixedLen($WIDTH$+$LEFT$,60)@px;height$HEIGHT$px;width60px;"><TR><TDALIGN=CENTERVALIGN=TOP><INPUTTYPE=BUTTONID=$NAME$_QueryCLASS=cSYS_QueryButtonVALUE="#CAP_QUERY#"$EVENTHANDLER_ATTRIBUTES_QUERY$><INPUTTYPE=BUTTONID=$NAME$_ClearCLASS=cSYS_QueryButtonVALUE="#CAP_CLEAR#"$EVENTHANDLER_ATTRIBUTES_CLEAR$><INPUTTYPE=BUTTONID=$NAME$_NewCLASS=cSYS_QueryButtonVALUE="#CAP_NEW#"$EVENTHANDLER_ATTRIBUTES_NEW$><BR><BR><INPUTTYPE=BUTTONID=$NAME$_ExitCLASS=cSYS_QueryButtonVALUE="#CAP_EXIT#"$EVENTHANDLER_ATTRIBUTES_EXIT$></TD></TR></TABLE>&nbsp;]]></DHTML></Presentation></QueryConditionFrame>]]></pre>生成器12所依據(jù)的邏輯動(dòng)作轉(zhuǎn)換表13,以生成對(duì)應(yīng)圖3客戶基本資料查詢網(wǎng)頁(yè)應(yīng)用程序的DHMTL程序?qū)嵤├?,該邏輯?dòng)作轉(zhuǎn)換表13實(shí)施例如下<prelisting-type="program-listing"><![CDATA[<QueryConditionFrameFamily="Frame"><Logic><ExtraAttributeName="EVENTHANDLER_ATTRIBUTES_QUERY"><DHTML><![CDATA[ONCLICK="$NAME$_Cmd_onClick(’Query’);"]]></DHTML><SCRIPT><![CDATA[/*possilbevaluesofcmdQuery,Clear,New,Exit*/function$NAME$_Cmd_onClick(cmd){}]]></SCRIPT></ExtraAttribute><ExtraAttributeName="EVENTHANDLER_ATTRIBUTES_CLEAR"><DHTML><![CDATA[ONCLICK="$NAME$_Cmd_onClick(’Clear’);"]]></DHTML></ExtraAttribute><ExtraAttributeName="EVENTHANDLER_ATTRIBUTES_NEW"><DHTML><![CDATA[ONCLICK="$NAME$_Cmd_onClick(’New’);"]]></DHTML></ExtraAttribute><ExtraAttributeName="EVENTHANDLER_ATTRIBUTES_EXIT"><DHTML><![CDATA[ONCLICK="$NAME$_Cmd_onClick(’Exit’);"]]></DHTML></ExtraAttribute></Logic></QueryConditionFrame>]]></pre>生成器12所生成圖3客戶基本資料查詢網(wǎng)頁(yè)應(yīng)用程序的DHTML程序?qū)嵤├溥M(jìn)一步一CSS(cascadingstylesheet)表述合并,該CSS表述實(shí)施例如下<prelisting-type="program-listing"><![CDATA[.cSYS_FrameLeft{height10px;border-stylegroove;border-width2px;border-bottom;border-right;}.cSYS_FrameCaption{background#E8E1BB;positionabsolute;top-8px;font-size15px;z-index2;}.cSYS_FrameCaptionBG{}.cSYS_FrameRight{height10px;border-stylegroove;border-width2px;border-left;border-bottom;}.cSYS_FrameBody{font-family’新細(xì)明體’;font-size15px;border-stylegroove;border-width2px;border-top}.cSYS_Label{font-family’新細(xì)明體’;font-size15px;}.cSYS_TextBox{height23px;font-family’新細(xì)明體’;font-size15px;}.cSYS_QueryButton{font-family’新細(xì)明體’;background#E8E1BB;font-size15px;width60px;height23px;}]]></pre>雖然本發(fā)明已以一較佳實(shí)施例所示如上,然其并非用以限定本發(fā)明,任何熟悉此技術(shù)者,在不脫離本發(fā)明的精神和范圍內(nèi)所作各種修飾和潤(rùn)飾都視為本申請(qǐng)專利范圍內(nèi)。權(quán)利要求1.一種網(wǎng)頁(yè)應(yīng)用程序產(chǎn)生器,其包括復(fù)數(shù)個(gè)控件的工具列,用于提供一使用者選取及編輯的該復(fù)數(shù)個(gè)控件,其中該工具列的每一個(gè)控件及每一個(gè)該經(jīng)選取及編輯后的控件,都是以一GUI表述所組成;一個(gè)轉(zhuǎn)譯器(translator),用以將每一個(gè)以GUI表述的控件轉(zhuǎn)換為對(duì)應(yīng)的中間表述(intermediarepresantation);一個(gè)表述轉(zhuǎn)換表(presentationmappingtable),用以指定如何將中間表述轉(zhuǎn)換為DHTML的規(guī)則,使得以GUI表述的控件依據(jù)該表述轉(zhuǎn)換表轉(zhuǎn)換為對(duì)應(yīng)以DHTML表述的控件;一個(gè)邏輯動(dòng)作轉(zhuǎn)換表(logicalpartmappingtable),用以指定如何將中間表述轉(zhuǎn)換為對(duì)應(yīng)至一事件處理機(jī)(eventhandler)及產(chǎn)生一指令(statement)的規(guī)則;一個(gè)生成器(generator),用以將每一個(gè)以GUI表述的控件,依據(jù)該表述轉(zhuǎn)換表及該邏輯動(dòng)作轉(zhuǎn)換表,生成對(duì)應(yīng)于每一個(gè)控件的DHTML表述及其所結(jié)合的對(duì)應(yīng)的事件處理機(jī)(eventhandler)及指令(statement)。2.如權(quán)利要求1所述的生成器,其中該GUI表述為VisualBasic表述。3.如權(quán)利要求1所述的生成器,其中該GUI表述為Delphi表述。4.如權(quán)利要求1所述的生成器,其中該中間表述為符合XML標(biāo)準(zhǔn)的表述。5.如權(quán)利要求1所述的生成器,其中該生成器所生成的對(duì)應(yīng)于每一個(gè)控件的DHTML表述,其進(jìn)一步與一CSS(cascadingstylesheet)表述合并。6.如權(quán)利要求1所述的生成器,其中該復(fù)數(shù)個(gè)控件分別為卷標(biāo)(label)控件、文本框(textbox)控件、復(fù)選框(checkbox)控件、選項(xiàng)框(optionbox)控件、列表框(listbox)控件、組合框(combobox)控件、群定位(sstab)控件、框(frame)控件、命令鈕(commandbutton)控件、(checkbox)控件、柵格(grid)控件、樹(shù)狀(treeview)控件、選擇列(selectedlist)控件、排序列(sortlist)控件、超級(jí)鏈接(hyperlink)控件、文件說(shuō)明(menureference)控件、條件框(conditionalframe)控件、日歷(calendarbox)控件、執(zhí)行式文本框(advancedtextbox)控件、輸入html(inlineHTML)控件、結(jié)果表(resulttable)控件、加載html(externalHTML)控件及查詢條件框(queryconditionframe)控件。全文摘要本發(fā)明提供一種網(wǎng)頁(yè)應(yīng)用程序產(chǎn)生器,包括:復(fù)數(shù)個(gè)控件的工具列,工具列的每一個(gè)控件及每一個(gè)經(jīng)選取及編輯后的控件,都是以一GUI表述所組成;一個(gè)轉(zhuǎn)譯器,將每一個(gè)以GUI表述的控件轉(zhuǎn)換為對(duì)應(yīng)的中間表述;一個(gè)表述轉(zhuǎn)換表,指定如何將中間表述轉(zhuǎn)換為DHTML的規(guī)則;一個(gè)邏輯動(dòng)作轉(zhuǎn)換表,指定如何將中間表述轉(zhuǎn)換為對(duì)應(yīng)至一事件處理機(jī)及產(chǎn)生一指令的規(guī)則;一個(gè)生成器,將每一個(gè)以GUI表述的控件,生成對(duì)應(yīng)于每一個(gè)控件的DHTML表述及其所結(jié)合的對(duì)應(yīng)的事件處理機(jī)及指令。文檔編號(hào)G06F9/45GK1371049SQ0110384公開(kāi)日2002年9月25日申請(qǐng)日期2001年2月22日優(yōu)先權(quán)日2001年2月22日發(fā)明者陳恭,張志祥申請(qǐng)人:三慧科技股份有限公司