<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 汽車(chē)電子 > 設計應用 > QT平臺下基于XML的界面設計與管理(上)

QT平臺下基于XML的界面設計與管理(上)

作者:周珊珊 劉高高 時(shí)間:2017-02-24 來(lái)源:電子產(chǎn)品世界 收藏

1  引言
     用戶(hù)界面是軟件系統的重要組成部分,是對軟件的人 機交互、操作邏輯、界面美觀(guān)的整體設計,是系統和用戶(hù)之 間進(jìn)行交互和信息交換的媒介,它實(shí)現信息的內部形式與人 類(lèi)可以接受的形式之間的轉換。是一個(gè)完整的應用程序 開(kāi)發(fā)框架,它包括一個(gè)類(lèi)庫和一些跨平臺、國際化的工具, 以其強大的功能、良好的可移植性逐漸成為一種被廣泛使 用的GUI系統,它提供給應用程序開(kāi)發(fā)者建立藝術(shù)級的圖形 用戶(hù)界面所需的所有功能。本文所描述軟件是在平臺下 開(kāi)發(fā)實(shí)現的,為了提高軟件用戶(hù)界面的擴展性和界面開(kāi)發(fā)的 效率,使軟件的最終用戶(hù)也可以通過(guò)工具對界面進(jìn)行修改和 定制,本文提出了基于可擴展標記語(yǔ)言(eXtensible Markup Language,)的用戶(hù)界面方案,并開(kāi)發(fā)出相應的界面管 理系統。

2 界面生成理論基礎
2.1 界面生成技術(shù)
是一種在互聯(lián)網(wǎng)上保存和傳遞信息的語(yǔ)言,以其 結構化、可擴展、靈活等特點(diǎn)廣泛流行。XML有著(zhù)極其靈 活的語(yǔ)法,能夠描述各種類(lèi)型的信息。平臺無(wú)關(guān)性使其成為 跨平臺數據表示和交換的標準。XML的文檔結構特別適合 存儲界面模版的樹(shù)形結構,各種元素、屬性、注釋等構成了 XML文件的基本組件,XML文檔基本上可以限定為一棵特 殊的文本化的樹(shù),因此以XML文檔結構樹(shù)的形式容易實(shí)現 界面模版的可視化處理?;赬ML的界面設計生成技術(shù)涉 及到界面所描述的XML文檔、界面組件事件監聽(tīng)類(lèi)、界面 生成器、編程語(yǔ)言的組件庫和界面定制工具。本文提供的軟件界面是在平臺下構建的,要在此環(huán)境下利用XML技術(shù)生成一個(gè)界面,首先要提供界面描述XML文檔和界面組件事件監聽(tīng)類(lèi)。界面描述XML文檔使用XML描述界面上所有 組件及其屬性,包括名稱(chēng)、大小、位置、布局以及與之相對 應的事件監聽(tīng)類(lèi)等。界面描述XML文檔可以用XML編輯器 來(lái)編寫(xiě),也可以從其他的數據源自動(dòng)生成。界面組件事件監 聽(tīng)類(lèi)負責監聽(tīng)并且處理對應界面描述XML文檔中組件的事 件,比如按鈕事件、點(diǎn)擊事件等,由組件事件引發(fā)的一系 列操作都由該類(lèi)來(lái)實(shí)現。在界面描述XML文檔的解析過(guò)程 中,界面生成器會(huì )根據文檔中的組件事件屬性值加載進(jìn)來(lái), 按照觸發(fā)執行其定義的操作。
具體操作為,在軟件啟動(dòng)時(shí),先讀取界面信息,然后 根據界面信息生成圖形用戶(hù)界面。XML是一門(mén)新興的、面 向Internet應用的標記語(yǔ)言,它是由W3C(World Wide Web Consortium)組織在1998年制定的一種通用語(yǔ)言規范。XML 既 是 標 準 通 用 標 記 語(yǔ) 言 ( S G M L ) 的 一 個(gè) 子 集 , 也 是 對 SGML的一種改良。使用XML作為界面配置文件的原因主要 基于以下幾點(diǎn):
1 ) X M L 語(yǔ) 法 嚴 格 , 格 式 靈 活 , 具 有 良 好 的 擴 展 性 和 自 描 述 性 , 所 描 述 的 形 式 與 內 容 相 分 離 , 便 于 對 界 面 元 素 的 描 述 進(jìn) 行擴展;
2)XML存儲的格式 簡(jiǎn) 單 、 是 能 夠 使 用 任 何 文 本 編 輯 器 讀 寫(xiě)的 純 文 本 , 用 戶(hù) 即 使

本文引用地址:http://dyxdggzs.com/article/201702/344431.htm

圖1  界面生成流程圖

圖2  XML參數配置(a)

圖3  XML參數配置(b)
沒(méi)有配套的可視化界面編輯工具,也可以用一個(gè)簡(jiǎn)單的文本 編輯軟件實(shí)現對用戶(hù)界面的配置;
3)XML規范中提供了對多語(yǔ)種的支持,包括UTF-7、
UTF-8、UNI C0、GB23I2(簡(jiǎn)體中文)、BIG5(繁體中文) 等,這一特點(diǎn)使得XML 非常有利于存儲和管理多語(yǔ)言用戶(hù) 界面,可以很容易地實(shí)現軟件的國際化和本地化;
4)XML可以應用于Windows、Linux、Unix、Mac等多 種 平 臺 上 , 因 此 使 用 X M L 存 儲界面信息,可實(shí)現跨平臺異
構應用程序之間的界面信息共 享;
5) XML的樹(shù)狀存儲結構
便于實(shí)現基于語(yǔ)義的智能數據 搜索,當軟件界面數據量非常 大時(shí),可以實(shí)現對界面信息的 快速查詢(xún)和數據提取。
2.2 pugixml庫介紹

圖4   XML生成界面
pugi xml是一個(gè)XML操作庫, 能解析XML內容, 它有 以下幾點(diǎn)優(yōu)勢: 輕量, 只有三個(gè)文件; 支持Unicode; 支 持X PATH解析; 速度快, 僅比R apid Xml慢一些; 跨平臺
(windows/linux);面向對象。
和其他XML庫相比,pugixml優(yōu)勢顯而易見(jiàn):
1)支持字符集:tinyxml不支持unicode(這是很多人不 愿意用tinyxml的原因之一),pugixml支持UTF8 encoding、 Little-endian UTF16、Big-endian UTF16、UTF16 with native en d i an n es s 、 L i tt l e - en d i anU T F 3 2 、 Big- en d i an U T F 3 2 和 UTF32with native endianness。
2)操作XML文件的性能如表1所示(105頁(yè))。
3)使用的方便性。雖然pugixml和tinyxml都是基于面向 對象的,但pugixml的使用方便性遠勝tinyxml。比如在查找 節點(diǎn)的屬性值方面,Tinyxml需要調用者從根節點(diǎn)開(kāi)始查找
(使用TiXmlElement類(lèi)),然后遞歸找下去,找到后取出屬 性值。而pugixml使用一個(gè)child函數封裝了查找節點(diǎn)功能。(未完待續)



關(guān)鍵詞: QT XML

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>