3基于XML的模板定制技術(shù)
3.1模板子元素的創(chuàng)建
通過(guò)對(duì)模板組成對(duì)象分析可知撤忆,模板定制實(shí)際上就是將一種類型的工藝卡片格式分解成靜態(tài)格、動(dòng)態(tài)格睬毒、對(duì)象格及循環(huán)格等模板子元素矿钩,并借助交互式手段分別生成的過(guò)程劫丧。在本系統(tǒng)中,模板被看作是一個(gè)XML文檔實(shí)體蛀家,因此生成模板的過(guò)程實(shí)際上就是新建一個(gè)XML文檔的過(guò)程浊待,而新建模板子元素就對(duì)應(yīng)為創(chuàng)建XML文檔的一個(gè)節(jié)點(diǎn)。為了保證新建的XML文檔能夠被系統(tǒng)解析馅溉,創(chuàng)建的XML文檔必須符合Schema的定義缔类。
為創(chuàng)建一個(gè)新的文檔對(duì)象,必須建立一個(gè)新的Msxml2.DOMDocument范例劲阎,下面是相應(yīng)的C++代碼:
IXMLDOMDocumentPtrm_pXMLDoc;
m_pXMLDoc.CreateInstance(_T("msxml2.domdocument"));
在創(chuàng)建DOMDocument對(duì)象之后绘盟,可以為不同類型的語(yǔ)法分析行為和處理行為設(shè)置標(biāo)記,裝載XML文檔悯仙,在文檔內(nèi)部建立新節(jié)點(diǎn)龄毡,以創(chuàng)建不同的模板子元素,從而生成一張完整的工藝卡片锡垄。
3.2工藝卡片的繪制
新建模板以后沦零,用戶可以在初始模板上進(jìn)行工藝卡片的繪制工作。繪圖時(shí)系統(tǒng)采用Windows圖形設(shè)備接口(GDI)货岭。通過(guò)對(duì)工藝卡片的元素分解可知路操,卡片是由一系列的單元格組成的,因此繪圖時(shí)的主要工作是矩形框的繪制茴她。
在繪圖開(kāi)始之前寻拂,需要獲取設(shè)備描述表句柄,此外還需要獲取設(shè)備描述表信息丈牢,設(shè)置GDI的映射方式等。在畫圖時(shí)瞄沙,可以選擇畫筆的顏色及線寬已箫,在界面的狀態(tài)欄中將根據(jù)畫筆的移動(dòng)動(dòng)態(tài)顯示其坐標(biāo)值。此外系統(tǒng)還提供了"橡皮條"的功能坟荤,即隨著鼠標(biāo)的移動(dòng)動(dòng)態(tài)顯示圖形蕴节,從而使得操作直觀。
3.3模板子元素對(duì)象屬性的定義
畫圖結(jié)束以后挽沧,系統(tǒng)將屏幕上的圖形臨時(shí)保存到鏈表中贷弧,圖形的坐標(biāo)等信息都存儲(chǔ)在其中。此時(shí)糙官,圖形元素并沒(méi)有加到卡片模板中窟潜,必須對(duì)其屬性進(jìn)行定義后才能將圖形元素保存。
在定義圖形元素屬性時(shí)鱼催,系統(tǒng)提供了圖形元素的拾取功能翅栖。圖形元素被選中以后贤方,可以對(duì)其賦予相應(yīng)的屬性。XML提供的屬性操作方法來(lái)自IXMLDOMElement谅褪,可以通過(guò)IXMLDOMElement的setAttribute方法設(shè)置其屬性∠赘剩現(xiàn)將模板子元素的屬性進(jìn)行分析:
a.靜態(tài)格屬性。靜態(tài)格中的內(nèi)容在表格設(shè)計(jì)時(shí)已經(jīng)確定张抄,它需要包含"字體"子元素砂蔽,用來(lái)設(shè)置文字的屬性,字體子元素屬性包括字體名稱署惯、大小等左驾。
b.動(dòng)態(tài)格屬性。動(dòng)態(tài)格中的內(nèi)容是由用戶填寫的泽台,需要設(shè)置表格的布局方式什荣,它包含固定格子元素。為了實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的關(guān)聯(lián)怀酷,還需要設(shè)置字段名屬性及對(duì)應(yīng)的數(shù)據(jù)庫(kù)表名稻爬。通過(guò)這種對(duì)應(yīng)關(guān)系不僅在工藝編輯的時(shí)候可實(shí)現(xiàn)工藝數(shù)據(jù)在數(shù)據(jù)庫(kù)中的直接存取,而且為工藝數(shù)據(jù)的開(kāi)放式管理奠定基礎(chǔ)蜕依。
c.循環(huán)格屬性桅锄。循環(huán)格的屬性與動(dòng)態(tài)格類似。由于其含有多行記錄样眠,需要對(duì)行列屬性進(jìn)行設(shè)置友瘤。
d.對(duì)象格屬性。對(duì)象格是填寫工序圖或其它復(fù)雜數(shù)據(jù)的單元格肩蹬,需要對(duì)圖形或其它復(fù)雜數(shù)據(jù)的來(lái)源進(jìn)行設(shè)置虏向。
e.各對(duì)象的公共屬性。由于各子元素為一系列的單元格深酗,因此都包含表格坐標(biāo)值皇腮、線形等公共屬性。還需要對(duì)各單元格的卡片區(qū)域?qū)傩赃M(jìn)行設(shè)置汁恍。在對(duì)模板子元素屬性進(jìn)行定義后据值,需要保存結(jié)果才能將圖形元素加到卡片模板中。此時(shí)需要采用XML的save方法:m_pXMLDoc.save(sXMLDocName)窃征。保存成功以后瘾歉,圖形界面隨即被更新,顯示出最新的卡片模板格式芳潦。
3.4模板格式的交互式調(diào)整
當(dāng)模板各對(duì)象生成之后沧宠,有時(shí)其格式還不能滿足要求,需要對(duì)其做一系列的調(diào)整才能最終形成一個(gè)格式良好的工藝模板。
a.單元格位置的調(diào)整塘坛。選中所要調(diào)整的單元格以后苗膝,可以通過(guò)系統(tǒng)的位置調(diào)整功能進(jìn)行調(diào)整。單元格位置調(diào)整有2種實(shí)現(xiàn)方式:初級(jí)調(diào)整和精確調(diào)整植旧。初級(jí)調(diào)整是通過(guò)移動(dòng)選中的單元格進(jìn)行粗略的調(diào)整辱揭,移動(dòng)提供了"橡皮條"的處理方式,動(dòng)態(tài)地拖的坐標(biāo)值病附,包括水平方向和豎直方向的移動(dòng)值问窃。
b.單元格大小的調(diào)整。由于在卡片定制時(shí)繪制出的單元格通常是任意畫出的完沪,因此單元格的大小尺寸往往不夠精確域庇。在系統(tǒng)中提供了任意改變單元格大小的功能,如等高覆积、等寬和改變單元格高度听皿、改變單元格寬度等功能。當(dāng)用戶選中了一種單元格后宽档,會(huì)彈出對(duì)話框尉姨,用戶可以通過(guò)輸人具體的數(shù)值對(duì)單元格的高度或?qū)挾冗M(jìn)行調(diào)整。
c.字段名稱的調(diào)整吗冤。有時(shí)候用戶需要改變單元格的字段名稱卓召,以改變其與數(shù)據(jù)庫(kù)的關(guān)聯(lián)。只要選中一個(gè)單元格沐虐,將彈出相應(yīng)的屬性設(shè)置對(duì)話框伶摄,用戶可以對(duì)該單元格的字段名稱進(jìn)行修改。
d.靜態(tài)格屬性的調(diào)整阴些。靜態(tài)格內(nèi)容的調(diào)整和字段名稱的調(diào)整類似历劣,只要選中需要調(diào)整的靜態(tài)格,就將彈出屬性更改對(duì)話框佣深,可對(duì)單元格屬性進(jìn)行調(diào)整险朴,包括靜態(tài)格的文本、字體及對(duì)齊方式等的調(diào)整诬翩。綜上所述,用戶以一種交互式的手段調(diào)整生成的模板子元素的大小羞菊、位置和屬性贫巴,經(jīng)調(diào)整后,模板定制工作就完成了隐户。
4結(jié)束語(yǔ)
通過(guò)對(duì)工藝卡片的組成元素進(jìn)行分解炕婶,將工藝模板抽象為由靜態(tài)格、動(dòng)態(tài)格、對(duì)象格和循環(huán)格組成的實(shí)體柠掂,借助交互式手段進(jìn)行工藝模板的繪制與定義项滑,并將構(gòu)建好的工藝模板保存為XML文檔,完成了模板子元素的加載涯贞,從而實(shí)現(xiàn)了工藝模板的定制過(guò)程枪狂。實(shí)踐證明,這種交互式模板定制技術(shù)對(duì)于實(shí)現(xiàn)CAPP系統(tǒng)的通用性和商品化具有重要的意義宋渔。
聲明:本網(wǎng)站所收集的部分公開(kāi)資料來(lái)源于互聯(lián)網(wǎng)州疾,轉(zhuǎn)載的目的在于傳遞更多信息及用于網(wǎng)絡(luò)分享,并不代表本站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)皇拣,也不構(gòu)成任何其他建議严蓖。本站部分作品是由網(wǎng)友自主投稿和發(fā)布、編輯整理上傳氧急,對(duì)此類作品本站僅提供交流平臺(tái)颗胡,不為其版權(quán)負(fù)責(zé)。如果您發(fā)現(xiàn)網(wǎng)站上所用視頻吩坝、圖片缩毯、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)第一時(shí)間告知赤蚜,我們將根據(jù)您提供的證明材料確認(rèn)版權(quán)并按國(guó)家標(biāo)準(zhǔn)支付稿酬或立即刪除內(nèi)容琼护,以保證您的權(quán)益!聯(lián)系電話:010-58612588 或 Email:editor@mmsonline.com.cn屁爵。
- 暫無(wú)反饋
編輯推薦
- 2025新年特刊:打造新質(zhì)生產(chǎn)力,智啟未來(lái)新篇章
- 定義制造業(yè)未來(lái)的數(shù)控加工中心技術(shù)專題
- 航空航天及交通領(lǐng)域先進(jìn)制造技術(shù)應(yīng)用專題
- 解碼消費(fèi)電子產(chǎn)品生產(chǎn)的數(shù)字化之路技術(shù)專題
- 精密智能機(jī)床琳轿,助力制造升級(jí)技術(shù)專題
- 汽車輕量化驅(qū)動(dòng)下的零部件加工應(yīng)用專題
- 高性能銑刀實(shí)現(xiàn)高精加工生產(chǎn)技術(shù)專題
- 航空航天發(fā)動(dòng)機(jī)解決方案專題
- 高效齒輪加工生產(chǎn)技術(shù)方案專題
- 金屬加工液的性能不止?jié)櫥夹g(shù)應(yīng)用專題