• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    C++ Builder中采用DevExpressVCL控件開發(fā)淺析

    2014-07-28 00:37:43蔣祝平
    電腦知識(shí)與技術(shù) 2014年16期

    蔣祝平

    摘要:闡述DevExpress VCL控件在C++ Builder下的安裝、編譯及使用。通過(guò)采用該控件中強(qiáng)大的Grid組件,實(shí)現(xiàn)數(shù)據(jù)庫(kù)開發(fā)中復(fù)雜表單的設(shè)計(jì),采用Ribbon組件,實(shí)現(xiàn)最新的Office Ribbon界面,增強(qiáng)開發(fā)軟件的用戶操作性。

    關(guān)鍵詞:C++ Builder;DevExpress;Ribbon;Grid

    中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)16-3782-07

    在Windows平臺(tái)Win32軟件開發(fā)領(lǐng)域,由于Microsoft的大力推廣及不斷更新,Visual Studio系列可以說(shuō)是目前最為流行的開發(fā)平臺(tái)。當(dāng)然,任何領(lǐng)域都不可能只有一家獨(dú)大,在軟件開發(fā)工具的進(jìn)化歷史長(zhǎng)河中,有家公司一直與Microsoft競(jìng)爭(zhēng),那就是Borland軟件公司。但隨著Microsoft在Visual Studio系列上的逐漸發(fā)力,Borland的競(jìng)爭(zhēng)逐漸處于下風(fēng),最終將開發(fā)工具業(yè)務(wù)出售給現(xiàn)在的Embarcadero,Embarcadero將Delphi和C++ Builder等開發(fā)工具放在一起稱為RAD Studio。近幾年,雖然Embarcadero不斷推陳出新,幾乎每年升級(jí)RAD Studio,無(wú)奈市場(chǎng)占有率不斷下降,但這并不能否定目前最新版本的RAD Studio XE6是非常優(yōu)秀的開發(fā)工具。

    筆者從Delphi 5.0時(shí)代開始,一直使用C++ Builder 作為主要開發(fā)工具,現(xiàn)在使用的版本是C++ Builder 2010。RAD Studio從2009版本開始,幾乎每年一升級(jí),經(jīng)歷了2010、XE、XE2、XE3、XE4,直到目前最新的XE6,最新版本支持原生Android移動(dòng)平臺(tái)開發(fā),有很大發(fā)展前景。由于目前我的工作基本上只用到Windows平臺(tái),所以一直使用的是2010版本。

    在Delphi和C++ Builder開發(fā)領(lǐng)域,有一款重量級(jí)的開發(fā)控件,那就是DevExpress公司開發(fā)的用于Delphi與C++ Builder的DevExpress VCL Controls。這套控件功能十分強(qiáng)大,涵蓋了界面設(shè)計(jì)、數(shù)據(jù)表單等方方面面。由于功能的強(qiáng)大,也造成這套控件的使用也非常復(fù)雜,該文就從這套控件在C++ Builder中的安裝開始,對(duì)它在開發(fā)使用過(guò)程中的一些技巧及問(wèn)題做一闡述。

    1 DevExpress VCL Controls的編譯與安裝

    DevExpress VCL Controls的版本更新很快,每當(dāng)RAD Studio新版本發(fā)布,DevExpress都會(huì)及時(shí)跟進(jìn),使自己的控件能夠兼容最新的Delphi和C++ Builder。目前官網(wǎng)上最新的版本是13.2,支持C++ Builder 2007至最新的C++ Builder XE6,而我們能夠從網(wǎng)上獲取到的最新版本為13.1.4。該控件的很多版本分為多種安裝格式,最完整的是第三方制作的帶源碼、實(shí)例及幫助的完整版安裝程序,只需要一步步安裝即可,非常方便;但另外一種是只有源代碼、實(shí)例,而沒(méi)有安裝程序。這種只有源代碼的包安裝起來(lái)很復(fù)雜,因?yàn)檎麄€(gè)DevExpress VCL包含超過(guò)180個(gè)控件,將近30個(gè)package,需要在C++ Builder中將每個(gè)package的源代碼編譯安裝,且有一定的安裝順序。這個(gè)編譯安裝過(guò)程相當(dāng)繁瑣,造成每次需要安裝DevExpress VCL的過(guò)程經(jīng)常出現(xiàn)問(wèn)題。

    筆者依據(jù)近幾年開發(fā)的經(jīng)驗(yàn),參考Delphi的dcc32編譯器的詳細(xì)使用幫助,采用命令行編譯的方式,將每個(gè)package用dcc32進(jìn)行命令行編譯,代碼格式如下:

    dcc32.exe "..\..\ExpressCore Library\Packages\dxCoreRS14.dpk" -JL -B -U"..\..\ExpressCore Library\Sources;..\..\Library\RS14" -R"..\..\ExpressCore Library\Sources" -N"." -LE"." -LN"." -NH"." -NO"."

    這條編譯命令中所用到的參數(shù)說(shuō)明:

    -JL = 生成C++需要的 .lib,.bpi以及所有的.hpp文件

    -B = 編譯所有單元文件

    -U = 單元文件所在目錄

    -R = 資源文件所在目錄(dcr等文件)

    -LE = .bpl文件輸出目錄

    -LN = .dcp文件輸出目錄

    -NH = .hpp文件輸出目錄

    -NO = .obj文件輸出目錄

    其中所有的輸出文件指定的目錄都是“.”,表示該批處理文件運(yùn)行時(shí)所在的目錄,方便最后C++ Builder進(jìn)行開發(fā)時(shí),搜索需要的各種文件。

    這是單個(gè)dpk文件的編譯命令,將所有的dpk文件編譯命令生成一個(gè)批處理,就可以通過(guò)運(yùn)行該批處理文件,一次性將所有的dpk文件編譯完成。在批處理中,由于各個(gè)dpk之間的相互依賴關(guān)系,有一定的先后順序,經(jīng)過(guò)測(cè)試,確定了整個(gè)DevExpress VCL控件編譯的順序,保證所有控件都能正常編譯,生成的批處理文件如圖1所示:

    將下載獲取的DevExpress VCL控件源碼包解壓,復(fù)制到自己想要存放的目錄,筆者參考自動(dòng)安裝程序的目錄,存放到Program Files(x86)\DevExpress VCL,并且在該目錄下創(chuàng)建Library\RS14,用于RAD Studio 2010版本的編譯后的文件存放,這樣方便識(shí)別,如果想要編譯其他版本,就創(chuàng)建RS15等等其他目錄。將我自己創(chuàng)建的批處理文件manuinstallRS14.bat復(fù)制到RS14,以管理員身份運(yùn)行command命令,執(zhí)行該批處理,稍等片刻,所有的控件就編譯好了,文件都生成在RS14目錄。

    運(yùn)行C++ Builder 2010,進(jìn)入Install Packages,添加編譯生成的所有以dcl開頭的bpl控件,這是設(shè)計(jì)時(shí)控件,這樣DevExpress VCL就全部安裝完成,可以在C++ Builder中看到這些控件。后面還要在Options中設(shè)置軟件開發(fā)中使用這些控件的編譯路徑,這個(gè)一般程序員都應(yīng)該清楚,就不多說(shuō)了。

    2 DevExpress VCL中Ribbon控件的使用

    DevExpress VCL這套控件包中有超過(guò)180個(gè)控件,幾乎涵蓋了軟件開發(fā)過(guò)程中界面設(shè)計(jì)的方方面面,可以說(shuō),有了這套控件,基本上可以不需要安裝其他第三方控件。其中的Ribbon控件就是用于開發(fā)Ribbon界面的有力工具,Microsoft自從2007年發(fā)布Office2007后,其標(biāo)志性的Office Ribbon界面目前已成為流行軟件開發(fā)的標(biāo)準(zhǔn)UI,現(xiàn)在許多軟件的操作界面都采用Ribbon,包括現(xiàn)在最新的Win8/Win8.1系統(tǒng),很多地方都已經(jīng)集成Ribbon操作。RAD Studio從2009版本開始也自帶了Ribbon控件,但是自帶的這個(gè)控件使用起來(lái)很麻煩,而且功能不強(qiáng),比起DevExpress VCL中的Ribbon控件有很大的差距。下面以筆者自己寫的幾個(gè)軟件為例,簡(jiǎn)單介紹一下Ribbon控件的開發(fā)使用。

    Ribbon控件位于ExpressBars分類中,名稱顯示為TdxRibbon,TdxRibbon要與TdxBarManager配合使用,先將一個(gè)TdxBarManager放置于Form上,然后放置TdxRibbon,TdxRibbon會(huì)自動(dòng)與TdxBarManager關(guān)聯(lián),缺省情況下,Ribbon欄只有一個(gè)Tab,且是Office 2007 Ribbon的風(fēng)格,一般與Ribbon相配合的還有一個(gè)TdxRibbonStatusBar,也放在Form上即可。很簡(jiǎn)單的三步,一個(gè)Ribbon界面的Form即設(shè)計(jì)好了。在缺省的Tab上面點(diǎn)擊右鍵,就會(huì)彈出右鍵菜單,可以增加或者刪除Tab,可以增加Group。每個(gè)Tab就是Ribbon欄上一個(gè)選項(xiàng)卡,每個(gè)選項(xiàng)卡下面可以增加多個(gè)Group,在Group中創(chuàng)建各種工具按鈕。如下圖所示,就是一個(gè)簡(jiǎn)單的Ribbon空界面。在Ribbon控件的屬性設(shè)置中,有個(gè)Style屬性,可以設(shè)置Office 2007、2010、2013這三種風(fēng)格。2007與2010的設(shè)置還不一樣,我們選擇2010即可。在現(xiàn)在這個(gè)階段,Ribbon界面左邊的那個(gè)File菜單還沒(méi)有出現(xiàn),對(duì)于2010的風(fēng)格,我們需要放置TdxRibbonBackstageView控件,將TdxRibbon屬性中ApplicationButton下Menu關(guān)聯(lián)至TdxRibbonBackstageView,Text屬性中輸入菜單顯示的文字,比如File,同時(shí),在TdxBarManager中創(chuàng)建一個(gè)ToolBar,將TdxRibbon的QuickAccessToolbar屬性下的Toobar屬性關(guān)聯(lián)至這個(gè)新創(chuàng)建的Toolbar,這樣,Ribbon的菜單就出來(lái)了。運(yùn)行一下這個(gè)程序,就可以看到如圖2的界面了。

    這時(shí)候,你會(huì)發(fā)現(xiàn)一個(gè)小小的問(wèn)題,那就是Windows系統(tǒng)自己的標(biāo)題欄還是存在的,而真正的Ribbon界面程序,是沒(méi)有這個(gè)標(biāo)題欄的。這個(gè)問(wèn)題筆者是參考Devexpress提供的demo解決的,首先將TdxRibbon的SurpportNonClientDrawing屬性設(shè)為true,然后修改該Form創(chuàng)建的基類。即將BCB缺省創(chuàng)建的基類class TForm1 : public TForm,修改為class TForm1 : public TdxCustomRibbonForm,重新編譯運(yùn)行,是不是成功了?

    由于Ribbon欄上面眾多的Group,每個(gè)Group中又有眾多的按鈕,所以,需要我們?cè)赥dxBarManaager控件中詳細(xì)分類設(shè)置好每個(gè)Tab,每個(gè)Group中對(duì)應(yīng)的按鈕,這是個(gè)細(xì)活,不能著急。以上就是TdxRibbon控件的關(guān)鍵幾個(gè)問(wèn)題,注意這幾個(gè)問(wèn)題,整個(gè)Ribbon界面就搭建好了,其他的Tab欄上面各種按鈕控件一個(gè)個(gè)試用一下即可掌握使用方法。

    3 DevExpress VCL中TcxGrid控件的使用

    用到DevExpress VCL的控件,我們就不得不提到其中的TcxGrid控件,筆者最初就是從使用這個(gè)強(qiáng)大的Grid表格控件開始的。

    3.1 TcxGrid基礎(chǔ)應(yīng)用

    使用TcxGrid控件創(chuàng)建一個(gè)表格應(yīng)用很簡(jiǎn)單,首先設(shè)置好連接數(shù)據(jù)庫(kù)的各種控件,根據(jù)連接方式的不同,有不同的設(shè)置方法,比如,筆者使用的是ADO連接SQL Server,這也是數(shù)據(jù)庫(kù)開發(fā)常用的一種方式,設(shè)置好TADOQuery和TDataSource控件,將TcxGrid放置在Form上,TcxGrid控件中有兩個(gè)概念需要理清:Level和View。Level相當(dāng)于TcxGrid自帶的PageControl控件,每個(gè)Level下鏈接一個(gè)View,這個(gè)View就是具體的表格。圖3就是基礎(chǔ)的TcxGrid形態(tài)。

    3.2 TcxGrid分組統(tǒng)計(jì)功能

    TcxGrid自帶很多強(qiáng)大的功能,比如匯總、分組查詢,可以得到強(qiáng)大的統(tǒng)計(jì)功能。圖4顯示的是以“發(fā)貨日期”為一級(jí)分組,“市縣”為二級(jí)分組,這樣就能顯示某一天中,某個(gè)縣詳細(xì)的學(xué)校清單,縣一級(jí)有合計(jì),當(dāng)天那一級(jí)也有合計(jì),非常清楚明晰。

    4 結(jié)束語(yǔ)

    采用Devexpress的控件解決方案,極大地提高了軟件開發(fā)的效率,降低系統(tǒng)維護(hù)的復(fù)雜性,也同時(shí)降低了投資成本和后期管理成本,具有很高的實(shí)用性。該文主要針對(duì)支持Delphi與C++ Builder的VCL控件進(jìn)行介紹,Devexpress的控件,尤其是TcxGrid還有深入的開發(fā)方法,需要更深層次的使用與挖掘。

    參考文獻(xiàn):

    [1] 陳寬達(dá). C++ Builder深度歷險(xiǎn)[M]. 上海:華中科技大學(xué)出版社,2002.

    [2] Satya Sai Kolachina.C++Builder6 Developers Guide[M]. Wordware Publishing, Inc,2003.endprint

    運(yùn)行C++ Builder 2010,進(jìn)入Install Packages,添加編譯生成的所有以dcl開頭的bpl控件,這是設(shè)計(jì)時(shí)控件,這樣DevExpress VCL就全部安裝完成,可以在C++ Builder中看到這些控件。后面還要在Options中設(shè)置軟件開發(fā)中使用這些控件的編譯路徑,這個(gè)一般程序員都應(yīng)該清楚,就不多說(shuō)了。

    2 DevExpress VCL中Ribbon控件的使用

    DevExpress VCL這套控件包中有超過(guò)180個(gè)控件,幾乎涵蓋了軟件開發(fā)過(guò)程中界面設(shè)計(jì)的方方面面,可以說(shuō),有了這套控件,基本上可以不需要安裝其他第三方控件。其中的Ribbon控件就是用于開發(fā)Ribbon界面的有力工具,Microsoft自從2007年發(fā)布Office2007后,其標(biāo)志性的Office Ribbon界面目前已成為流行軟件開發(fā)的標(biāo)準(zhǔn)UI,現(xiàn)在許多軟件的操作界面都采用Ribbon,包括現(xiàn)在最新的Win8/Win8.1系統(tǒng),很多地方都已經(jīng)集成Ribbon操作。RAD Studio從2009版本開始也自帶了Ribbon控件,但是自帶的這個(gè)控件使用起來(lái)很麻煩,而且功能不強(qiáng),比起DevExpress VCL中的Ribbon控件有很大的差距。下面以筆者自己寫的幾個(gè)軟件為例,簡(jiǎn)單介紹一下Ribbon控件的開發(fā)使用。

    Ribbon控件位于ExpressBars分類中,名稱顯示為TdxRibbon,TdxRibbon要與TdxBarManager配合使用,先將一個(gè)TdxBarManager放置于Form上,然后放置TdxRibbon,TdxRibbon會(huì)自動(dòng)與TdxBarManager關(guān)聯(lián),缺省情況下,Ribbon欄只有一個(gè)Tab,且是Office 2007 Ribbon的風(fēng)格,一般與Ribbon相配合的還有一個(gè)TdxRibbonStatusBar,也放在Form上即可。很簡(jiǎn)單的三步,一個(gè)Ribbon界面的Form即設(shè)計(jì)好了。在缺省的Tab上面點(diǎn)擊右鍵,就會(huì)彈出右鍵菜單,可以增加或者刪除Tab,可以增加Group。每個(gè)Tab就是Ribbon欄上一個(gè)選項(xiàng)卡,每個(gè)選項(xiàng)卡下面可以增加多個(gè)Group,在Group中創(chuàng)建各種工具按鈕。如下圖所示,就是一個(gè)簡(jiǎn)單的Ribbon空界面。在Ribbon控件的屬性設(shè)置中,有個(gè)Style屬性,可以設(shè)置Office 2007、2010、2013這三種風(fēng)格。2007與2010的設(shè)置還不一樣,我們選擇2010即可。在現(xiàn)在這個(gè)階段,Ribbon界面左邊的那個(gè)File菜單還沒(méi)有出現(xiàn),對(duì)于2010的風(fēng)格,我們需要放置TdxRibbonBackstageView控件,將TdxRibbon屬性中ApplicationButton下Menu關(guān)聯(lián)至TdxRibbonBackstageView,Text屬性中輸入菜單顯示的文字,比如File,同時(shí),在TdxBarManager中創(chuàng)建一個(gè)ToolBar,將TdxRibbon的QuickAccessToolbar屬性下的Toobar屬性關(guān)聯(lián)至這個(gè)新創(chuàng)建的Toolbar,這樣,Ribbon的菜單就出來(lái)了。運(yùn)行一下這個(gè)程序,就可以看到如圖2的界面了。

    這時(shí)候,你會(huì)發(fā)現(xiàn)一個(gè)小小的問(wèn)題,那就是Windows系統(tǒng)自己的標(biāo)題欄還是存在的,而真正的Ribbon界面程序,是沒(méi)有這個(gè)標(biāo)題欄的。這個(gè)問(wèn)題筆者是參考Devexpress提供的demo解決的,首先將TdxRibbon的SurpportNonClientDrawing屬性設(shè)為true,然后修改該Form創(chuàng)建的基類。即將BCB缺省創(chuàng)建的基類class TForm1 : public TForm,修改為class TForm1 : public TdxCustomRibbonForm,重新編譯運(yùn)行,是不是成功了?

    由于Ribbon欄上面眾多的Group,每個(gè)Group中又有眾多的按鈕,所以,需要我們?cè)赥dxBarManaager控件中詳細(xì)分類設(shè)置好每個(gè)Tab,每個(gè)Group中對(duì)應(yīng)的按鈕,這是個(gè)細(xì)活,不能著急。以上就是TdxRibbon控件的關(guān)鍵幾個(gè)問(wèn)題,注意這幾個(gè)問(wèn)題,整個(gè)Ribbon界面就搭建好了,其他的Tab欄上面各種按鈕控件一個(gè)個(gè)試用一下即可掌握使用方法。

    3 DevExpress VCL中TcxGrid控件的使用

    用到DevExpress VCL的控件,我們就不得不提到其中的TcxGrid控件,筆者最初就是從使用這個(gè)強(qiáng)大的Grid表格控件開始的。

    3.1 TcxGrid基礎(chǔ)應(yīng)用

    使用TcxGrid控件創(chuàng)建一個(gè)表格應(yīng)用很簡(jiǎn)單,首先設(shè)置好連接數(shù)據(jù)庫(kù)的各種控件,根據(jù)連接方式的不同,有不同的設(shè)置方法,比如,筆者使用的是ADO連接SQL Server,這也是數(shù)據(jù)庫(kù)開發(fā)常用的一種方式,設(shè)置好TADOQuery和TDataSource控件,將TcxGrid放置在Form上,TcxGrid控件中有兩個(gè)概念需要理清:Level和View。Level相當(dāng)于TcxGrid自帶的PageControl控件,每個(gè)Level下鏈接一個(gè)View,這個(gè)View就是具體的表格。圖3就是基礎(chǔ)的TcxGrid形態(tài)。

    3.2 TcxGrid分組統(tǒng)計(jì)功能

    TcxGrid自帶很多強(qiáng)大的功能,比如匯總、分組查詢,可以得到強(qiáng)大的統(tǒng)計(jì)功能。圖4顯示的是以“發(fā)貨日期”為一級(jí)分組,“市縣”為二級(jí)分組,這樣就能顯示某一天中,某個(gè)縣詳細(xì)的學(xué)校清單,縣一級(jí)有合計(jì),當(dāng)天那一級(jí)也有合計(jì),非常清楚明晰。

    4 結(jié)束語(yǔ)

    采用Devexpress的控件解決方案,極大地提高了軟件開發(fā)的效率,降低系統(tǒng)維護(hù)的復(fù)雜性,也同時(shí)降低了投資成本和后期管理成本,具有很高的實(shí)用性。該文主要針對(duì)支持Delphi與C++ Builder的VCL控件進(jìn)行介紹,Devexpress的控件,尤其是TcxGrid還有深入的開發(fā)方法,需要更深層次的使用與挖掘。

    參考文獻(xiàn):

    [1] 陳寬達(dá). C++ Builder深度歷險(xiǎn)[M]. 上海:華中科技大學(xué)出版社,2002.

    [2] Satya Sai Kolachina.C++Builder6 Developers Guide[M]. Wordware Publishing, Inc,2003.endprint

    運(yùn)行C++ Builder 2010,進(jìn)入Install Packages,添加編譯生成的所有以dcl開頭的bpl控件,這是設(shè)計(jì)時(shí)控件,這樣DevExpress VCL就全部安裝完成,可以在C++ Builder中看到這些控件。后面還要在Options中設(shè)置軟件開發(fā)中使用這些控件的編譯路徑,這個(gè)一般程序員都應(yīng)該清楚,就不多說(shuō)了。

    2 DevExpress VCL中Ribbon控件的使用

    DevExpress VCL這套控件包中有超過(guò)180個(gè)控件,幾乎涵蓋了軟件開發(fā)過(guò)程中界面設(shè)計(jì)的方方面面,可以說(shuō),有了這套控件,基本上可以不需要安裝其他第三方控件。其中的Ribbon控件就是用于開發(fā)Ribbon界面的有力工具,Microsoft自從2007年發(fā)布Office2007后,其標(biāo)志性的Office Ribbon界面目前已成為流行軟件開發(fā)的標(biāo)準(zhǔn)UI,現(xiàn)在許多軟件的操作界面都采用Ribbon,包括現(xiàn)在最新的Win8/Win8.1系統(tǒng),很多地方都已經(jīng)集成Ribbon操作。RAD Studio從2009版本開始也自帶了Ribbon控件,但是自帶的這個(gè)控件使用起來(lái)很麻煩,而且功能不強(qiáng),比起DevExpress VCL中的Ribbon控件有很大的差距。下面以筆者自己寫的幾個(gè)軟件為例,簡(jiǎn)單介紹一下Ribbon控件的開發(fā)使用。

    Ribbon控件位于ExpressBars分類中,名稱顯示為TdxRibbon,TdxRibbon要與TdxBarManager配合使用,先將一個(gè)TdxBarManager放置于Form上,然后放置TdxRibbon,TdxRibbon會(huì)自動(dòng)與TdxBarManager關(guān)聯(lián),缺省情況下,Ribbon欄只有一個(gè)Tab,且是Office 2007 Ribbon的風(fēng)格,一般與Ribbon相配合的還有一個(gè)TdxRibbonStatusBar,也放在Form上即可。很簡(jiǎn)單的三步,一個(gè)Ribbon界面的Form即設(shè)計(jì)好了。在缺省的Tab上面點(diǎn)擊右鍵,就會(huì)彈出右鍵菜單,可以增加或者刪除Tab,可以增加Group。每個(gè)Tab就是Ribbon欄上一個(gè)選項(xiàng)卡,每個(gè)選項(xiàng)卡下面可以增加多個(gè)Group,在Group中創(chuàng)建各種工具按鈕。如下圖所示,就是一個(gè)簡(jiǎn)單的Ribbon空界面。在Ribbon控件的屬性設(shè)置中,有個(gè)Style屬性,可以設(shè)置Office 2007、2010、2013這三種風(fēng)格。2007與2010的設(shè)置還不一樣,我們選擇2010即可。在現(xiàn)在這個(gè)階段,Ribbon界面左邊的那個(gè)File菜單還沒(méi)有出現(xiàn),對(duì)于2010的風(fēng)格,我們需要放置TdxRibbonBackstageView控件,將TdxRibbon屬性中ApplicationButton下Menu關(guān)聯(lián)至TdxRibbonBackstageView,Text屬性中輸入菜單顯示的文字,比如File,同時(shí),在TdxBarManager中創(chuàng)建一個(gè)ToolBar,將TdxRibbon的QuickAccessToolbar屬性下的Toobar屬性關(guān)聯(lián)至這個(gè)新創(chuàng)建的Toolbar,這樣,Ribbon的菜單就出來(lái)了。運(yùn)行一下這個(gè)程序,就可以看到如圖2的界面了。

    這時(shí)候,你會(huì)發(fā)現(xiàn)一個(gè)小小的問(wèn)題,那就是Windows系統(tǒng)自己的標(biāo)題欄還是存在的,而真正的Ribbon界面程序,是沒(méi)有這個(gè)標(biāo)題欄的。這個(gè)問(wèn)題筆者是參考Devexpress提供的demo解決的,首先將TdxRibbon的SurpportNonClientDrawing屬性設(shè)為true,然后修改該Form創(chuàng)建的基類。即將BCB缺省創(chuàng)建的基類class TForm1 : public TForm,修改為class TForm1 : public TdxCustomRibbonForm,重新編譯運(yùn)行,是不是成功了?

    由于Ribbon欄上面眾多的Group,每個(gè)Group中又有眾多的按鈕,所以,需要我們?cè)赥dxBarManaager控件中詳細(xì)分類設(shè)置好每個(gè)Tab,每個(gè)Group中對(duì)應(yīng)的按鈕,這是個(gè)細(xì)活,不能著急。以上就是TdxRibbon控件的關(guān)鍵幾個(gè)問(wèn)題,注意這幾個(gè)問(wèn)題,整個(gè)Ribbon界面就搭建好了,其他的Tab欄上面各種按鈕控件一個(gè)個(gè)試用一下即可掌握使用方法。

    3 DevExpress VCL中TcxGrid控件的使用

    用到DevExpress VCL的控件,我們就不得不提到其中的TcxGrid控件,筆者最初就是從使用這個(gè)強(qiáng)大的Grid表格控件開始的。

    3.1 TcxGrid基礎(chǔ)應(yīng)用

    使用TcxGrid控件創(chuàng)建一個(gè)表格應(yīng)用很簡(jiǎn)單,首先設(shè)置好連接數(shù)據(jù)庫(kù)的各種控件,根據(jù)連接方式的不同,有不同的設(shè)置方法,比如,筆者使用的是ADO連接SQL Server,這也是數(shù)據(jù)庫(kù)開發(fā)常用的一種方式,設(shè)置好TADOQuery和TDataSource控件,將TcxGrid放置在Form上,TcxGrid控件中有兩個(gè)概念需要理清:Level和View。Level相當(dāng)于TcxGrid自帶的PageControl控件,每個(gè)Level下鏈接一個(gè)View,這個(gè)View就是具體的表格。圖3就是基礎(chǔ)的TcxGrid形態(tài)。

    3.2 TcxGrid分組統(tǒng)計(jì)功能

    TcxGrid自帶很多強(qiáng)大的功能,比如匯總、分組查詢,可以得到強(qiáng)大的統(tǒng)計(jì)功能。圖4顯示的是以“發(fā)貨日期”為一級(jí)分組,“市縣”為二級(jí)分組,這樣就能顯示某一天中,某個(gè)縣詳細(xì)的學(xué)校清單,縣一級(jí)有合計(jì),當(dāng)天那一級(jí)也有合計(jì),非常清楚明晰。

    4 結(jié)束語(yǔ)

    采用Devexpress的控件解決方案,極大地提高了軟件開發(fā)的效率,降低系統(tǒng)維護(hù)的復(fù)雜性,也同時(shí)降低了投資成本和后期管理成本,具有很高的實(shí)用性。該文主要針對(duì)支持Delphi與C++ Builder的VCL控件進(jìn)行介紹,Devexpress的控件,尤其是TcxGrid還有深入的開發(fā)方法,需要更深層次的使用與挖掘。

    參考文獻(xiàn):

    [1] 陳寬達(dá). C++ Builder深度歷險(xiǎn)[M]. 上海:華中科技大學(xué)出版社,2002.

    [2] Satya Sai Kolachina.C++Builder6 Developers Guide[M]. Wordware Publishing, Inc,2003.endprint

    青春草视频在线免费观看| 熟女人妻精品中文字幕| 免费观看的影片在线观看| 99久久综合免费| 卡戴珊不雅视频在线播放| 亚洲婷婷狠狠爱综合网| 热99国产精品久久久久久7| 中文乱码字字幕精品一区二区三区| 夜夜骑夜夜射夜夜干| 人妻人人澡人人爽人人| 国产精品久久久久久精品电影小说| 国产 精品1| 国产69精品久久久久777片| 国产91av在线免费观看| 亚洲美女搞黄在线观看| 精品亚洲乱码少妇综合久久| h日本视频在线播放| 五月伊人婷婷丁香| 色视频在线一区二区三区| 韩国av在线不卡| 久久这里有精品视频免费| 亚洲成人av在线免费| 少妇被粗大猛烈的视频| 国产亚洲最大av| 啦啦啦中文免费视频观看日本| 亚洲色图综合在线观看| 晚上一个人看的免费电影| 18禁动态无遮挡网站| kizo精华| 日本av免费视频播放| 丰满迷人的少妇在线观看| 日韩 亚洲 欧美在线| 青春草视频在线免费观看| 国产免费福利视频在线观看| 国产精品欧美亚洲77777| 中文乱码字字幕精品一区二区三区| 久久国内精品自在自线图片| 成人综合一区亚洲| 永久免费av网站大全| 97超视频在线观看视频| 精品一区二区三区视频在线| 国产淫语在线视频| 男人舔奶头视频| 少妇的逼好多水| 亚洲av免费高清在线观看| 国产日韩欧美亚洲二区| 午夜福利在线观看免费完整高清在| 亚洲av成人精品一二三区| 久久97久久精品| 婷婷色av中文字幕| 成人免费观看视频高清| 一区二区av电影网| 亚洲精品国产av成人精品| 十八禁高潮呻吟视频 | 一二三四中文在线观看免费高清| 性色avwww在线观看| 日本色播在线视频| 丝袜喷水一区| videos熟女内射| 99久久精品一区二区三区| a级一级毛片免费在线观看| 国产毛片在线视频| 亚洲国产日韩一区二区| 国产有黄有色有爽视频| 汤姆久久久久久久影院中文字幕| 99热网站在线观看| 搡老乐熟女国产| 18禁在线无遮挡免费观看视频| 国产精品久久久久久精品电影小说| 亚洲精品456在线播放app| 一个人免费看片子| 亚洲精品一二三| 插逼视频在线观看| 欧美精品一区二区免费开放| 亚洲国产欧美在线一区| 日韩成人av中文字幕在线观看| 亚洲av综合色区一区| 国产在线视频一区二区| 最近最新中文字幕免费大全7| 99九九在线精品视频 | 人人妻人人澡人人看| 91精品国产国语对白视频| 亚洲av不卡在线观看| 免费大片黄手机在线观看| 国产一区二区在线观看日韩| 日韩免费高清中文字幕av| 观看免费一级毛片| 国产永久视频网站| 午夜免费鲁丝| 涩涩av久久男人的天堂| av网站免费在线观看视频| 成人特级av手机在线观看| 亚洲精品第二区| 18+在线观看网站| 日日啪夜夜撸| 美女内射精品一级片tv| 精品一区二区三卡| av在线观看视频网站免费| 欧美性感艳星| 伊人久久国产一区二区| 天天躁夜夜躁狠狠久久av| 激情五月婷婷亚洲| a级毛色黄片| 99国产精品免费福利视频| 精华霜和精华液先用哪个| 黄色毛片三级朝国网站 | 日韩av免费高清视频| 熟女人妻精品中文字幕| 精品酒店卫生间| www.色视频.com| 老司机影院成人| 国产伦精品一区二区三区四那| 日韩av在线免费看完整版不卡| 国产高清国产精品国产三级| 久久久久久久大尺度免费视频| 国产精品.久久久| 国产成人91sexporn| 一本大道久久a久久精品| 久久国产精品男人的天堂亚洲 | 免费观看在线日韩| 中国国产av一级| 亚洲精品中文字幕在线视频 | 中国国产av一级| 国产精品蜜桃在线观看| h日本视频在线播放| 各种免费的搞黄视频| 精品一区二区三区视频在线| 亚洲无线观看免费| 少妇人妻久久综合中文| 国产精品99久久99久久久不卡 | 久久国产乱子免费精品| 久久午夜福利片| 中文字幕亚洲精品专区| 在线观看免费视频网站a站| 日本黄大片高清| 大码成人一级视频| 精品卡一卡二卡四卡免费| 亚洲av在线观看美女高潮| 人妻一区二区av| 久久久久久久久久久久大奶| 爱豆传媒免费全集在线观看| 美女cb高潮喷水在线观看| videos熟女内射| 黑丝袜美女国产一区| 极品人妻少妇av视频| av国产精品久久久久影院| 国产亚洲精品久久久com| 99热这里只有是精品50| 欧美xxⅹ黑人| 最新中文字幕久久久久| 欧美性感艳星| 国产69精品久久久久777片| 少妇被粗大的猛进出69影院 | 六月丁香七月| 亚洲av综合色区一区| 久久久欧美国产精品| 亚洲国产精品一区二区三区在线| 搡女人真爽免费视频火全软件| 熟女电影av网| 少妇丰满av| 少妇裸体淫交视频免费看高清| 狂野欧美白嫩少妇大欣赏| 美女中出高潮动态图| 欧美日韩一区二区视频在线观看视频在线| 亚洲美女黄色视频免费看| 男女国产视频网站| 在线亚洲精品国产二区图片欧美 | 国产精品人妻久久久影院| 狂野欧美白嫩少妇大欣赏| 国产成人精品福利久久| 男女边吃奶边做爰视频| 亚洲精品一区蜜桃| 国产精品国产三级专区第一集| 在线观看免费高清a一片| 伊人久久国产一区二区| 精品国产露脸久久av麻豆| 菩萨蛮人人尽说江南好唐韦庄| 一区二区三区四区激情视频| 少妇人妻精品综合一区二区| 国产色婷婷99| 午夜福利网站1000一区二区三区| av免费在线看不卡| 国产精品久久久久久av不卡| 日韩一区二区三区影片| 午夜影院在线不卡| 人体艺术视频欧美日本| 十分钟在线观看高清视频www | 少妇精品久久久久久久| 久久国产精品大桥未久av | 高清毛片免费看| www.av在线官网国产| 亚洲精品日韩av片在线观看| 中国国产av一级| 少妇熟女欧美另类| 80岁老熟妇乱子伦牲交| 午夜福利网站1000一区二区三区| 国产国拍精品亚洲av在线观看| 男人爽女人下面视频在线观看| av在线老鸭窝| 肉色欧美久久久久久久蜜桃| 国产高清国产精品国产三级| 十八禁高潮呻吟视频 | 亚洲美女搞黄在线观看| 自拍偷自拍亚洲精品老妇| 午夜老司机福利剧场| 亚洲人成网站在线观看播放| 亚洲精品色激情综合| 日本黄色片子视频| 美女大奶头黄色视频| 亚洲色图综合在线观看| 久久久欧美国产精品| 精品久久久久久电影网| 麻豆乱淫一区二区| 亚洲精品aⅴ在线观看| 免费观看性生交大片5| 免费少妇av软件| 日本色播在线视频| 亚洲欧美日韩另类电影网站| 日本免费在线观看一区| 国产av国产精品国产| 精品一区二区三卡| 成人国产麻豆网| 亚洲人与动物交配视频| 一级毛片黄色毛片免费观看视频| 一区二区三区四区激情视频| 日日摸夜夜添夜夜添av毛片| 欧美精品国产亚洲| 99久久人妻综合| 亚洲精品乱码久久久久久按摩| 91精品伊人久久大香线蕉| 欧美变态另类bdsm刘玥| 亚洲自偷自拍三级| 国产深夜福利视频在线观看| 国产 一区精品| 国内精品宾馆在线| 人人妻人人澡人人爽人人夜夜| 日本猛色少妇xxxxx猛交久久| 欧美日韩亚洲高清精品| 日日啪夜夜撸| 精品人妻熟女av久视频| 夜夜看夜夜爽夜夜摸| 亚洲情色 制服丝袜| 国产高清三级在线| 日韩不卡一区二区三区视频在线| 啦啦啦啦在线视频资源| a级毛片在线看网站| 一区二区三区免费毛片| 国产一区二区三区综合在线观看 | 亚洲国产av新网站| 亚洲精品中文字幕在线视频 | 亚洲精品国产av成人精品| 久久久久久久久久成人| a级毛片免费高清观看在线播放| 亚洲国产精品国产精品| 婷婷色综合大香蕉| 建设人人有责人人尽责人人享有的| 美女脱内裤让男人舔精品视频| 午夜免费鲁丝| 亚洲无线观看免费| 亚洲精品国产色婷婷电影| av在线老鸭窝| 亚洲av男天堂| 亚洲av在线观看美女高潮| 国产精品福利在线免费观看| 亚洲精品第二区| 精品熟女少妇av免费看| videossex国产| 亚洲性久久影院| 大码成人一级视频| 丝袜喷水一区| 日日撸夜夜添| 亚洲美女搞黄在线观看| 精品国产乱码久久久久久小说| 99热6这里只有精品| 在线天堂最新版资源| 亚洲欧美日韩卡通动漫| 伦精品一区二区三区| 大片电影免费在线观看免费| 99热这里只有是精品50| 亚洲一级一片aⅴ在线观看| 亚洲精品456在线播放app| 日韩一本色道免费dvd| 高清欧美精品videossex| 久久久久国产网址| 久久精品久久精品一区二区三区| 熟女av电影| 又粗又硬又长又爽又黄的视频| 亚洲不卡免费看| 亚洲熟女精品中文字幕| 国产无遮挡羞羞视频在线观看| 亚洲精品aⅴ在线观看| 亚洲国产最新在线播放| 国产白丝娇喘喷水9色精品| 成人漫画全彩无遮挡| 中文字幕久久专区| 我的女老师完整版在线观看| 女的被弄到高潮叫床怎么办| 欧美日韩视频精品一区| 水蜜桃什么品种好| 22中文网久久字幕| 精品人妻熟女av久视频| 国内少妇人妻偷人精品xxx网站| 午夜91福利影院| 欧美激情极品国产一区二区三区 | 免费久久久久久久精品成人欧美视频 | 国产熟女欧美一区二区| 中文字幕av电影在线播放| 国产精品不卡视频一区二区| 亚洲内射少妇av| 国产高清三级在线| 日本vs欧美在线观看视频 | 一本—道久久a久久精品蜜桃钙片| 美女视频免费永久观看网站| 亚洲美女黄色视频免费看| 午夜激情福利司机影院| 日日啪夜夜撸| 青春草国产在线视频| 男女边摸边吃奶| 在现免费观看毛片| 亚洲欧美精品自产自拍| 午夜老司机福利剧场| 久久久久久久久久久免费av| 亚洲成人手机| h日本视频在线播放| av国产精品久久久久影院| 国产毛片在线视频| 色视频在线一区二区三区| a级片在线免费高清观看视频| 免费久久久久久久精品成人欧美视频 | 亚洲欧洲日产国产| 日韩电影二区| 夫妻午夜视频| av视频免费观看在线观看| 高清av免费在线| 免费少妇av软件| 亚州av有码| 日本91视频免费播放| 日本wwww免费看| 中文字幕亚洲精品专区| 日韩不卡一区二区三区视频在线| 99久久人妻综合| 久久精品国产自在天天线| 麻豆精品久久久久久蜜桃| 天天躁夜夜躁狠狠久久av| 麻豆成人午夜福利视频| 伊人亚洲综合成人网| 国产淫片久久久久久久久| 亚洲电影在线观看av| 99九九在线精品视频 | 精品人妻熟女av久视频| 亚洲精品乱码久久久久久按摩| 人妻少妇偷人精品九色| 午夜福利网站1000一区二区三区| 人妻少妇偷人精品九色| 亚洲av中文av极速乱| 国产 精品1| 欧美精品人与动牲交sv欧美| 免费黄色在线免费观看| 日日啪夜夜撸| 免费看av在线观看网站| 最黄视频免费看| 免费看日本二区| 国产真实伦视频高清在线观看| 妹子高潮喷水视频| 3wmmmm亚洲av在线观看| 老熟女久久久| 欧美精品国产亚洲| a级一级毛片免费在线观看| 色哟哟·www| 美女中出高潮动态图| 国产亚洲91精品色在线| 国产淫语在线视频| 国产亚洲最大av| kizo精华| 嫩草影院新地址| 人妻制服诱惑在线中文字幕| 91久久精品国产一区二区成人| 看免费成人av毛片| 国产免费一区二区三区四区乱码| 欧美日韩一区二区视频在线观看视频在线| 五月天丁香电影| 纵有疾风起免费观看全集完整版| 水蜜桃什么品种好| 只有这里有精品99| 成人二区视频| 搡女人真爽免费视频火全软件| 高清毛片免费看| www.色视频.com| 丁香六月天网| 一本—道久久a久久精品蜜桃钙片| 亚洲国产毛片av蜜桃av| 啦啦啦在线观看免费高清www| 久久国产精品男人的天堂亚洲 | 中国三级夫妇交换| 精品久久久噜噜| 大片电影免费在线观看免费| 午夜免费男女啪啪视频观看| 成人漫画全彩无遮挡| h视频一区二区三区| 女人精品久久久久毛片| 热re99久久精品国产66热6| 欧美三级亚洲精品| 一区二区三区四区激情视频| 欧美高清成人免费视频www| 久久久久精品久久久久真实原创| 国产精品嫩草影院av在线观看| 亚洲国产日韩一区二区| 国产精品免费大片| 十八禁高潮呻吟视频 | 亚洲成人一二三区av| 国产永久视频网站| 亚洲va在线va天堂va国产| 十八禁网站网址无遮挡 | 久久久精品免费免费高清| 精品久久久久久电影网| 国产精品伦人一区二区| 欧美精品人与动牲交sv欧美| 能在线免费看毛片的网站| 国产一区二区三区综合在线观看 | 亚洲第一区二区三区不卡| 美女福利国产在线| 一个人看视频在线观看www免费| 亚洲精品国产成人久久av| 精品99又大又爽又粗少妇毛片| 街头女战士在线观看网站| 男人狂女人下面高潮的视频| 国产一区二区在线观看av| 亚洲国产毛片av蜜桃av| 成人特级av手机在线观看| 色5月婷婷丁香| 亚洲精品久久午夜乱码| 国产高清不卡午夜福利| av女优亚洲男人天堂| 男女边摸边吃奶| 免费看av在线观看网站| 国产一区二区在线观看av| 一级爰片在线观看| 久久久精品94久久精品| 十八禁网站网址无遮挡 | 22中文网久久字幕| 亚洲成人一二三区av| 免费播放大片免费观看视频在线观看| 乱码一卡2卡4卡精品| 大码成人一级视频| 亚洲精华国产精华液的使用体验| 精品少妇久久久久久888优播| 黄色一级大片看看| 国语对白做爰xxxⅹ性视频网站| 综合色丁香网| 人妻 亚洲 视频| 黑人高潮一二区| 99久久人妻综合| 国产极品粉嫩免费观看在线 | 国产综合精华液| 免费少妇av软件| 亚洲av男天堂| 国产精品蜜桃在线观看| 这个男人来自地球电影免费观看 | 色哟哟·www| 中文在线观看免费www的网站| 精品熟女少妇av免费看| 久久精品久久精品一区二区三区| 日韩在线高清观看一区二区三区| 99热国产这里只有精品6| 亚洲国产精品成人久久小说| 你懂的网址亚洲精品在线观看| 毛片一级片免费看久久久久| 伊人久久精品亚洲午夜| 国产精品国产三级国产专区5o| 亚洲精品亚洲一区二区| 亚洲四区av| 久久久亚洲精品成人影院| 日韩一区二区三区影片| 日本wwww免费看| 中文字幕久久专区| 少妇裸体淫交视频免费看高清| 免费av不卡在线播放| 久久久久网色| 国产 一区精品| 新久久久久国产一级毛片| 精品久久国产蜜桃| 久久鲁丝午夜福利片| 一本久久精品| 男女边摸边吃奶| 18禁动态无遮挡网站| 18禁裸乳无遮挡动漫免费视频| 少妇的逼水好多| 精品少妇久久久久久888优播| 99精国产麻豆久久婷婷| 欧美精品亚洲一区二区| 免费观看a级毛片全部| 伊人久久国产一区二区| 成人特级av手机在线观看| 久久鲁丝午夜福利片| 美女cb高潮喷水在线观看| 久久久午夜欧美精品| 亚洲av不卡在线观看| 亚州av有码| 日日摸夜夜添夜夜添av毛片| 99九九在线精品视频 | 中文字幕免费在线视频6| 一本色道久久久久久精品综合| 80岁老熟妇乱子伦牲交| 91精品国产国语对白视频| 国产精品一区二区性色av| 国产无遮挡羞羞视频在线观看| 亚洲av男天堂| 熟女av电影| av国产久精品久网站免费入址| 亚洲av欧美aⅴ国产| 欧美成人精品欧美一级黄| 日韩中文字幕视频在线看片| 国产精品不卡视频一区二区| 欧美日韩国产mv在线观看视频| 男女啪啪激烈高潮av片| 精品99又大又爽又粗少妇毛片| 久久人人爽人人爽人人片va| 日韩,欧美,国产一区二区三区| 国产在视频线精品| 日产精品乱码卡一卡2卡三| 亚洲精品乱码久久久v下载方式| 九色成人免费人妻av| 人妻制服诱惑在线中文字幕| 久久久久网色| 欧美bdsm另类| 日韩欧美一区视频在线观看 | 国产成人精品无人区| 丰满饥渴人妻一区二区三| av免费在线看不卡| 国产毛片在线视频| 春色校园在线视频观看| 日本av免费视频播放| 又黄又爽又刺激的免费视频.| 中国国产av一级| 99视频精品全部免费 在线| 在线免费观看不下载黄p国产| 国产极品粉嫩免费观看在线 | www.av在线官网国产| 成年人午夜在线观看视频| 日韩中字成人| 久久精品熟女亚洲av麻豆精品| 成年av动漫网址| 男女边吃奶边做爰视频| 国产精品一区二区在线观看99| 熟女人妻精品中文字幕| 国产伦精品一区二区三区视频9| 99久久精品一区二区三区| 久久韩国三级中文字幕| 美女大奶头黄色视频| 九九爱精品视频在线观看| 一级毛片电影观看| 久久国产精品大桥未久av | 亚洲怡红院男人天堂| 人妻 亚洲 视频| 王馨瑶露胸无遮挡在线观看| 国产亚洲5aaaaa淫片| 极品少妇高潮喷水抽搐| 国产亚洲最大av| 人体艺术视频欧美日本| 免费看av在线观看网站| 一级片'在线观看视频| 岛国毛片在线播放| 欧美xxxx性猛交bbbb| 美女国产视频在线观看| 中文资源天堂在线| 亚洲av免费高清在线观看| 最黄视频免费看| 久热这里只有精品99| 热re99久久国产66热| 蜜臀久久99精品久久宅男| 国产日韩欧美亚洲二区| 欧美日韩视频高清一区二区三区二| 男女免费视频国产| 成年av动漫网址| 搡老乐熟女国产| 免费观看av网站的网址| 嘟嘟电影网在线观看| 久久人人爽人人爽人人片va| 三级经典国产精品| 麻豆精品久久久久久蜜桃| 亚洲自偷自拍三级| av有码第一页| 免费在线观看成人毛片| 亚洲自偷自拍三级| 女人久久www免费人成看片| 狂野欧美白嫩少妇大欣赏| 七月丁香在线播放| 国产成人freesex在线| 国产美女午夜福利| 女人精品久久久久毛片| 国产在线视频一区二区| 欧美xxxx性猛交bbbb| 中国三级夫妇交换| 成年人免费黄色播放视频 | 国产成人精品久久久久久| 国产欧美日韩一区二区三区在线 | 久久精品国产亚洲网站| 国产精品国产三级国产av玫瑰| 亚洲国产日韩一区二区| 亚洲精品第二区| 亚洲自偷自拍三级| 三级经典国产精品| 在线观看www视频免费| 亚洲内射少妇av| 国产av精品麻豆| 国产无遮挡羞羞视频在线观看| 国产精品免费大片| 人体艺术视频欧美日本| 香蕉精品网在线| 国产亚洲最大av| 亚洲欧美一区二区三区黑人 | 欧美国产精品一级二级三级 | 建设人人有责人人尽责人人享有的| 亚洲av福利一区| 国产精品一区二区在线观看99|