青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-341  評論-2670  文章-0  trackbacks-0
    原來API提供的TabControl只是改改樣式而已,客戶區(qū)連TabPage標(biāo)簽也算在了里面,點擊不同的TabPage也不會自動切換子控件的可見屬性。這些都要封裝啊囧……

    在這個封裝的設(shè)計里,雖然TabPage是一個普通的類,但是每一個TabPage都會自動附帶一個Static Control,并在適當(dāng)?shù)臅r機修改大小以及修改可見屬性。子控件實際上需要放在TabPage的Static Control里,不然的話其實可以連TabPage標(biāo)簽都擋掉。

 1 #include "..\..\..\..\VL++\Library\Windows\VL_WinGUI.h"
 2 #include "..\..\..\..\VL++\Library\Data\VL_System.h"
 3 
 4 using namespace vl;
 5 using namespace vl::windows;
 6 using namespace vl::system;
 7 
 8 class MyForm : public VL_WinForm
 9 {
10 protected:
11     VL_WinTab*                    FTab;
12     VUnicodeString                FBitmapPath;
13     VL_WinImageList*            FSmallImages;
14 
15     void InitControls()
16     {
17         FBitmapPath=VFileName(GetApplication()->GetAppName()).GetPath().MakeAbsolute(L"..\\..\\Views\\Bitmap\\").GetStrW();
18         FSmallImages=new VL_WinImageList(16,16);
19         for(VInt i=0;i<4;i++)
20         {
21             FSmallImages->Add(new VL_WinBitmap(FBitmapPath+L"s"+VUnicodeString(i)+L".bmp",true,true));
22         }
23 
24         FTab=new VL_WinTab(this);
25         GetPlacement()->SetBorderSize(10);
26         GetPlacement()->SetControl(FTab);
27         FTab->SetImageList(FSmallImages);
28         FTab->AddPage(L"Add Table").SetImageIndex(0);
29         FTab->AddPage(L"Arrange Windows").SetImageIndex(1);
30         FTab->AddPage(L"Remove Table").SetImageIndex(2);
31         FTab->AddPage(L"Graph").SetImageIndex(3);
32 
33         for(VInt i=0;i<FTab->GetPageCount();i++)
34         {
35             VL_WinTabPage Page=FTab->GetPage(i);
36             VL_WinEdit* Edit=new VL_WinEdit(Page,true);
37             Page.GetPlacement()->SetControl(Edit);
38             Edit->SetHScroll(true);
39             Edit->SetVScroll(true);
40             Edit->Move(0,0,Page.GetClientWidth(),Page.GetClientHeight());
41             Edit->SetText(L"This is a multiple line edit box in tag page "+VUnicodeString(i+1)+L".");
42         }
43         FTab->SetSelectedPage(FTab->GetPage(3));
44     }
45 
46 public:
47 
48     MyForm():VL_WinForm(true)
49     {
50         SetClientWidth(400);
51         SetClientHeight(400);
52         SetText(L"Vczh Form");
53         MoveCenter();
54         InitControls();
55         Show();
56     }
57 
58     ~MyForm()
59     {
60         delete FSmallImages;
61     }
62 };
63 
64 void main()
65 {
66     new MyForm;
67     GetApplication()->Run();
68 }

    自動生成、刪除和修改Static的確是比較麻煩的,不過好在API并不會對這些問題的解決施加新的困難。
 1     VL_WinTabPage VL_WinTab::AddPage(VUnicodeString Text)
 2     {
 3         return InsertPage(GetPageCount(),Text);
 4     }
 5 
 6     VL_WinTabPage VL_WinTab::InsertPage(VInt Index , VUnicodeString Text)
 7     {
 8         TCITEM Item;
 9         memset(&Item,0,sizeof(Item));
10         Item.mask=TCIF_TEXT;
11         Item.pszText=Text.Buffer();
12         Index=TabCtrl_InsertItem(FHandle,Index,&Item);
13         if(Index==-1)
14         {
15             return VL_WinTabPage();
16         }
17         else
18         {
19             RECT Rect;
20             GetClientArea(&Rect);
21             VL_WinStatic* Static=new VL_WinStatic(this);
22             FTabContainers.Insert(Index,Static);
23             ResetTopTabContainer();
24             ArrangeTabContainers();
25             return VL_WinTabPage(FHandle,Index,Static);
26         }
27     }
28 
29     void VL_WinTab::DeletePage(VInt Index)
30     {
31         if(Index>=0 && Index<GetPageCount())
32         {
33             if(TabCtrl_DeleteItem(FHandle,Index)==TRUE)
34             {
35                 delete FTabContainers.Fetch(Index);
36                 ArrangeTabContainers();
37             }
38         }
39     }
40 
41     VL_WinTabPage VL_WinTab::GetPage(VInt Index)
42     {
43         if(Index>=0 && Index<GetPageCount())
44         {
45             return VL_WinTabPage(FHandle,Index,FTabContainers[Index]);
46         }
47         else
48         {
49             return VL_WinTabPage();
50         }
51     }
52 
53     VInt VL_WinTab::GetPageCount()
54     {
55         return TabCtrl_GetItemCount(FHandle);
56     }
posted on 2008-08-13 06:33 陳梓瀚(vczh) 閱讀(1722) 評論(2)  編輯 收藏 引用 所屬分類: C++

評論:
# re: TabControl封裝完成 2008-08-13 06:37 | Lnn
good!  回復(fù)  更多評論
  
# re: TabControl封裝完成 2008-08-13 06:55 | 沈臻豪(foxtail)
興致勃勃捏你!無語指數(shù)五顆星  回復(fù)  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美在线首页| 99天天综合性| 欧美精品一区三区| 亚洲国产精品久久91精品| 久久精品91| 亚洲一级影院| 国产欧美一区二区三区久久| 91久久精品国产91久久性色| 欧美激情亚洲激情| 欧美日韩在线播放一区| 午夜在线播放视频欧美| 日韩五码在线| 亚洲激情自拍| 久久久久久精| 欧美日韩三区| 欧美亚洲免费电影| 欧美一站二站| 亚洲破处大片| 在线一区二区日韩| 亚洲高清二区| 一本色道久久88综合日韩精品| 国产精品第三页| 久久视频一区二区| 欧美一区二区视频在线观看2020| 日韩亚洲欧美综合| 亚洲欧美中文日韩v在线观看| 在线观看91精品国产入口| 日韩网站在线观看| 欧美亚韩一区| 免费看亚洲片| 国产精品免费看片| 亚洲高清一二三区| 国产视频在线观看一区二区| 亚洲精选成人| 黄色成人在线免费| 一区免费视频| 亚洲精选国产| 伊大人香蕉综合8在线视| 一区二区欧美在线| 亚洲人成7777| 久久国产主播精品| 久久久久久久久久久久久久一区 | 亚洲激情网站| 性欧美8khd高清极品| 国产精品一卡二| 亚洲黄页一区| 在线日韩中文| 日韩视频一区二区三区在线播放| 在线免费一区三区| 亚洲欧美伊人| 在线看日韩av| 久久久久综合| 欧美一区91| 国产精品揄拍500视频| 亚洲精品女人| 精品二区久久| 欧美影院在线播放| 欧美在线国产| 国产精品综合av一区二区国产馆| 亚洲另类在线视频| 日韩亚洲欧美一区| 欧美电影免费网站| 亚洲黄色小视频| 亚洲欧洲精品一区二区三区波多野1战4| 欧美一区二区日韩一区二区| 亚洲男人影院| 国产精品久久久久久久久久久久久久 | 久久精品一区二区| 国产字幕视频一区二区| 老鸭窝毛片一区二区三区| 亚洲国产精品成人| 亚洲视频在线观看三级| 国产精品一二三视频| 久久不射中文字幕| 亚洲激情在线| 亚洲欧美一区在线| 激情久久久久久久| 欧美经典一区二区三区| 亚洲在线一区二区| 欧美不卡在线| 亚洲永久免费视频| 激情久久久久久久久久久久久久久久 | 1000部精品久久久久久久久| 欧美激情麻豆| 性色av一区二区三区在线观看 | 亚洲精品孕妇| 欧美一级久久| 国产婷婷色综合av蜜臀av| 亚洲色图自拍| 欧美第十八页| 一区二区三区精密机械公司 | 欧美成人午夜激情| 亚洲精品女人| 亚洲一区二区在线免费观看| 国产精品无码专区在线观看| 久久九九精品| 一区二区日韩伦理片| 国产精品自拍三区| 开心色5月久久精品| 亚洲国产精品va在看黑人| 亚洲无线观看| 狠狠色香婷婷久久亚洲精品| 欧美一进一出视频| 亚洲精品乱码视频| 久久久久成人精品| 亚洲美女诱惑| 国产欧美日韩视频一区二区三区 | 亚洲精品久久久久| 国产亚洲aⅴaaaaaa毛片| 久久九九精品99国产精品| 亚洲第一精品夜夜躁人人爽| 亚洲一区三区视频在线观看| 国产一区视频在线看| 欧美精品一区二| 欧美一二三区在线观看| 亚洲国产小视频| 久久久精品日韩欧美| 亚洲最新中文字幕| 狠狠综合久久av一区二区小说| 欧美午夜精品久久久久久久| 久久手机精品视频| 亚洲欧美日韩视频二区| 亚洲精品日产精品乱码不卡| 久久综合中文色婷婷| 亚洲欧美日韩国产| 亚洲精品一区二区三区福利| 国产日本亚洲高清| 国产精品久久久久久久久免费樱桃| 久久免费视频一区| 亚洲女人小视频在线观看| 最近中文字幕日韩精品| 久久这里有精品视频| 亚洲欧美色一区| 亚洲大片一区二区三区| 国产免费成人| 欧美午夜精品理论片a级按摩| 久久综合久久综合这里只有精品| 亚洲永久免费视频| 亚洲最新中文字幕| 一区二区三区色| 亚洲乱码国产乱码精品精可以看| 欧美成人伊人久久综合网| 久久久久国产一区二区三区| 欧美亚洲综合网| 亚洲欧美成人精品| 性做久久久久久| 亚洲欧美日韩直播| 亚洲天堂网站在线观看视频| 亚洲乱码国产乱码精品精98午夜| 亚洲国产成人久久综合| 欧美午夜无遮挡| 国产伦理一区| 国产精品日韩欧美| 国产精品日韩在线观看| 国产精品久久久久久超碰 | 欧美一区三区三区高中清蜜桃| 日韩一级免费| 99国产精品视频免费观看一公开| 亚洲乱码国产乱码精品精可以看| 亚洲三级性片| 亚洲精品国产系列| 亚洲免费观看| 亚洲综合欧美日韩| 午夜欧美大尺度福利影院在线看| 国产精品自拍小视频| 国产精品一级| 国产亚洲va综合人人澡精品| 欧美三日本三级三级在线播放| 国产精品腿扒开做爽爽爽挤奶网站| 国产精品亚洲激情| 国产亚洲精品一区二555| 国产乱理伦片在线观看夜一区 | 亚洲免费观看高清在线观看| 一本一本久久a久久精品牛牛影视| 在线一区二区三区四区五区| 亚洲欧美日韩国产成人精品影院 | 在线播放豆国产99亚洲| 亚洲第一精品夜夜躁人人爽| 亚洲欧洲另类国产综合| 亚洲伦理在线观看| 亚洲一区二区三区在线看 | 久久一综合视频| 亚洲电影一级黄| 亚洲美洲欧洲综合国产一区| 亚洲精品看片| 亚洲婷婷免费| 久久不见久久见免费视频1| 麻豆乱码国产一区二区三区| 欧美精品www在线观看| 国产精品家教| 国产日产亚洲精品| 亚洲国产精品视频| 亚洲性感美女99在线| 久久久久免费视频| 亚洲国产精品www| 亚洲激情亚洲| 久久精品日韩欧美| 欧美日韩中文另类| 影音先锋一区| 亚洲一区二区三区精品在线观看|