如何用Qt實現Office界面樣式--QtitanRibbon


QtitanRibbon組件實現了Microsoft Ribbon for Qt的概念,設計用於任何使用Qt開發的商業應用。這個組件和Qt一道為獲取一些應用提供了一個難得的機會,這些應用在全球三大主要平台Windows、Linux和Mac OS X上都有現代化的外觀和感覺。

前往慧都網可免費下載最新版Qtitan系列組件

QtitanRibbon為最終應用提供了5種主題:藍色、黑色、淺綠色、銀色和風景畫。下面是真實效果的一些截圖。

Windows平台:

QtitanRibbon QT Ribbon

Linux平台:

QtitanRibbon QT Ribbon

Mac平台:

QtitanRibbon QT Ribbon

正如你所看到的,外觀在三個平台上簡直完全一樣,這是我們精心設計的結果。僅僅有一個默認的區別:每個平台主題UI的初始化不同。Windows代表了經典,所以是藍色主題。Linux平台總讓人聯想起黑客和爆脾氣的人,因而它的初始化主題是黑色的。Mac OS X象征着智慧與奢華,所以默認主題是風景優美的圖畫。任何時候,Ribbsson UI的初始化主題都可以被修改,與平台無關。

QtitanRibbon作為Ribbon UI for Nokia's Qt的實現標准


QtitanRibbon的實現嚴格遵守Microsoft的標准和規范,並應用到Ribbon UI概念。Ribbon UI概念從用戶中發展建立起來。因而如果您使用的是QtitanRibbon,那么您的用戶能輕松地學習和快速啟動您的應用。控件的組成相當於一個集合,Ribbon UI 說明書對其進行了描述。QtitanRibbon組件提供以下元素:

QtitanRibbon QT Ribbon

QtitanRibbon QT Ribbon

QtitanRibbon QT Ribbon

下表是一些已實現和計划中的元素:

Ribbon UI Elements Stage
Ribbon Bar Implemented
Ribbon Tabs Implemented
Ribbon Groups Implemented
Application Button Implemented
Backstage View Implemented
Contextual Tabs Implemented
Quick Access Bar Implemented
Button Control Implemented
Button Group Control Implemented
Calendar Control Planned
Check Box Control Implemented
Combo Box Control Implemented
Data/Time Picker Control Planned
Drop-Down Button Control Implemented
Gallery Control Implemented
Key Tip Control Implemented
Label Control Implemented
Masked Text Control Planned
Numeric Up-Down Control Implemented
Panel Control Implemented
Radio Button Control Implemented
Screen Tip Control Implemented
Scroll Bars Control Implemented
Separator Control Implemented
Slider Control Implemented
Split Button Control Implemented
Status Bar Control Implemented
Tab Control Control Implemented
Text Box Control Implemented
Toggle Button Control Implemented

本產品中,我們與Ribbon UI一起還提供了一種Style OfficeStyl(它繼承自QStyle),您可以使用它創建與Microsoft Office 2007或者2010非常相似的應用。Style OfficeStyle能很好的提供5種主題:藍色、黑色、銀色、淺綠色和風景畫。

QtitanRibbon -實現細節


這個組件100%使用原生Qt/C++設計,沒有借助其他工具和第三方庫。然而,每個平台上的部分代碼是以不同的方式實現的,緣由於Qt的部分特性,也是為了提高渲染性能。

QtitanRibbon支持Qt4.5.x、Qt4.6.x、Qt4.7.x、Qt4.8.x以及Qt5.x.x的所有版本。

集成Qt Designer


QtitanRibbon組件便捷集成了Qt Designer。這允許您在運行時管理表格中Ribbon UI的位置。

QtitanRibbon功能特點


概述

QtitanRibbon是一組窗體部件集(控件元素),能幫助您輕松、快速地為應用添加下一代用戶界面(見圖1)。產品完全基於Qt SDK。

QtitanRibbon QT Ribbon

我們使用幾種全新的方法為您提供市場上最佳、最全面的UI解決方案。以下是它的一些最重要的功能:

  • 與Microsoft Ribbon功能完全相同。

  • 能輕松集成到已有的或新的應用中。

  • 樣式選擇多變,包括Office 2007、Office 2010(藍色、銀色、黑色、淺綠色、風景畫), Office 2013正在開發中。

  • 優化的繪畫引擎。

  • 純Qt代碼,無條件支持Windows和Linux系統。

QtitanRibbon使用Qt SDK通過C++編寫,並支持以下環境:

  • Visual Studio 2003

  • Visual Studio 2005

  • Visual Studio 2008

  • Visual Studio 2010

  • Visual Studio 2012

  • Qt Creator

  • Qt產品集成的任何其他IDE

  • Qt 4.5 - 4.8, Qt 5 (32位/64位)

  • Windows、Linux、Mac OSX

QtitanRibbon元素

Ribbon

Ribbon是用戶界面的主要元素,包含了多個標簽。 每個標簽的內容都進行了分組(見圖2、圖3)。

QtitanRibbon QT Ribbon

圖2. 主標簽選項卡

QtitanRibbon QT Ribbon

圖3. 主標簽選項卡和激活的內容菜單

當一個組允許您自動定位窗體部件,它還有另一個非常有用的功能,可以最小化無論寬度是否改變的ribbon,並且提供對其特性的所有訪問權限(見圖4)。

QtitanRibbon QT Ribbon

圖4. 基於ribbon寬度的組定位

當一個組最小化之后,用戶可以左擊組打開一個彈出式窗口,通過它來訪問組的控件元素。

QtitanRibbon QT Ribbon

圖5. 訪問最小化組的控制元素

系統按鈕

左上角的按鈕可以打開應用菜單(見圖6):

QtitanRibbon QT Ribbon

MDI

QtitanRibbon支持MDI(多文檔界面) (見圖7、圖8)。

QtitanRibbon QT Ribbon

圖7. 應用的子窗口排列

QtitanRibbon QT Ribbon

圖8. 應用子窗口的最大化

您也可以使用MDITabs管理子窗口。

QtitanRibbon QT Ribbon

圖9. MDITabs的使用

QtitanRibbon風格

支持以下風格:

  • Office 2007藍色 (見圖10)

  • Office 2007銀色 (見圖11)

  • Office 2007黑色 (見圖12)

  • Office 2007淺綠色 (見圖13)

您可以在Qt用戶界面的經典視圖中使用上面列出的風格(見圖14),這樣所有Qtitan的風格都繼承自QStyle。

QtitanRibbon QT Ribbon

圖10.Office 2007藍色

QtitanRibbon QT Ribbon

圖11.Office 2007銀色

QtitanRibbon QT Ribbon

圖12.Office 2007黑色

QtitanRibbon QT Ribbon

圖13.Office 2007淺綠色

您可以在Qt用戶界面的經典視圖中使用上面列出的風格(見圖14),這樣所有Qtitan的風格都繼承自QStyle。

QtitanRibbon QT Ribbon

控件元素(窗體部件)

Qtitan Ribbon每一個控件元素的開發都是為了兼容了以下需求:

  • 控件元素能用於不同的環境中,例如ribbon、表格和彈出式菜單。

  • 控件元素應盡可能是一個窗口,它保存系統資源,避免一系列問題。

  • 控件元素應該有幾個可視化的演示。例如,對於ribbon,控制元素的圖標可大可小,文本可有可無。當ribbon的寬度發生了變化,元素能有相應的變化。

按鈕

按鈕提供了以下使用選項:

  • 支持彈出式菜單(工具按鈕彈出模式)

  • 支持KeyTip

  • 支持ScreenTip

  • 支持可變和復選狀態

  • 支持顯示ToolButtonStyle

  • 支持文本和圖像調整

您可以依據大小和當前狀態來預覽ribbon上的按鈕。見圖15:

QtitanRibbon QT Ribbon

彈出式按鈕

帶彈出菜單的按鈕允許用戶從列表中選擇操作命令,它也提供一下功能(見圖16):

  • 支持KeyTip

  • 支持ScreenTip

  • 支持可變和復選狀態

  • 支持顯示ToolButtonStyle

  • 支持文本和圖像調整

QtitanRibbon QT Ribbon

圖16.帶有下拉菜單的幾種按鈕

按鈕具有混合功能(見圖17、圖18),有兩種工作模式-常規按鈕和帶彈出式菜單按鈕。允許用戶從菜單列表選擇命令的按鈕擁有以下屬性:

  • 支持KeyTip

  • 支持ScreenTip

  • 支持可變和復選狀態

  • 支持顯示ToolButtonStyle

  • 支持文本和圖像調整

QtitanRibbon QT Ribbon

圖18.Split Button狀態選項

按鈕組

您可以將小型按鈕加入分組(見圖19)。

QtitanRibbon QT Ribbon

復選框和單選按鈕

復選框和單選按鈕提供了常規QCheckBox和QRadioButton的功能(見圖20):

  • 能於用在ribbon和表格

  • 支持KeyTip

  • 支持ScreenTip

  • 支持可變和復選狀態

QtitanRibbon QT Ribbon

組合框

ComboBox擁有常規QComboBox的所有功能(見圖21):

  • 能用於ribbon和表格

  • 支持KeyTip

  • 支持ScreenTip

  • 支持可變狀態

  • 支持Text Box

QtitanRibbon QT Ribbon

滑動條

滑動條控件元素允許用戶在設定的范圍內改變值:

  • 能用於ribbon和表格

  • 支持可變狀態(見圖22、圖23)

QtitanRibbon QT Ribbon

圖22.在ribbon group中使用Slider組件

QtitanRibbon QT Ribbon

圖23.在status bar中使用Slider組件

SpinBox (數值升降)

SpinBox允許用戶改變其數值,並且有兩個按鈕:增加按鈕和減少按鈕。這個組件提供以下功能:

  • 能用於ribbon和表格

  • 支持KeyTip

  • 支持ScreenTip

  • 支持可變狀態

  • 支持Text Box

QtitanRibbon QT Ribbon

圖24.Qtitan Ribbon中的SpinBox

滾動條

根據當前選定的主題,可以對ribbon和表格進行水平和垂直滾動操作。

QtitanRibbon QT Ribbon

圖25.水平滾動和垂直滾動

標簽

雖然所有的控件元素都支持自己的文本,但是在某些情況下使用標簽還是更方便,它的功能如下:

  • 能用於ribbon和表格

  • 支持顯示文本和圖像(見圖26)

QtitanRibbon QT Ribbon

圖26.使用Label顯示文本和圖像

選項卡控件

常規控件元素QTabBar是通過選定的主題定義的。

QtitanRibbon QT Ribbon

圖27.TabControl in QtitanRibbon

狀態欄

標准狀態欄(QStatusBar)的外觀也取決於當前選定的主題。
您也可以使用狀態欄中的以下控件元素:

  • 下壓按鈕

  • 切換按鈕

  • 進度條

  • 滑動條

  • 標簽

QtitanRibbon QT Ribbon

圖28.StatusBar in QtitanRibbon

更多Qtitan組件:

  • QtitanRibbon: 遵循Microsoft Ribbon UI Paradigm for Qt技術的Ribbon UI組件,致力於為Windows、Linux和Mac OS X提供功能完整的Ribbon組件。
  • QtitanChart  : 是一個C ++庫,代表一組控件,這些控件使您可以快速地為應用程序提供漂亮而豐富的圖表。並且支持所有主要的桌面操作系統。
  • QtitanDataGrid: 適用於Qt的商業化DataGrid 組件,使得表格數據可以直接面向終端用戶完全集成了QtDesigner,極易適應其他相似開發環境,保證100%兼容Qt GUI。

感謝您的閱讀,希望這篇文章能帶給你一定的幫助!如果這篇文章沒能滿足你的需求、可前往慧都網獲取更多文章教程。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM