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

隨筆-341  評論-2670  文章-0  trackbacks-0
    Win32 API為了讓控件更為有用真是煞費苦心,不僅Tab沒有提供控件可見控制,連Scroll Bar點擊的時候竟然是不修改Position的,要我在每一個消息里用SBM_SETSCROLLINFO來設置當前的位置。而且當前的位置的獲得還不是一致的,根據消息的不同而不同。真是故意為難人啊。

    文本框里面的東西是為了檢查各個消息中GetPosition函數的正確性而打出來的。輸出消息的代碼如下:
  1 #include "..\..\..\..\VL++\Library\Windows\VL_WinGUI.h"
  2 
  3 using namespace vl;
  4 using namespace vl::windows;
  5 
  6 class MyForm : public VL_WinForm
  7 {
  8 protected:
  9     VL_WinScroll*            FHScroll;
 10     VL_WinScroll*            FVScroll;
 11     VL_WinEdit*                FEdit;
 12 
 13     void InitControls()
 14     {
 15         FHScroll=new VL_WinScroll(this,true);
 16         FHScroll->Move(0,380,380,20);
 17         FVScroll=new VL_WinScroll(this,false);
 18         FVScroll->Move(380,0,20,380);
 19         FEdit=new VL_WinEdit(this,true);
 20         FEdit->Move(0,0,380,380);
 21         FEdit->SetReadonly(true);
 22 
 23         FHScroll->OnScrollMin.Bind(this,&MyForm::Scroll_ScrollMin);
 24         FHScroll->OnScrollMax.Bind(this,&MyForm::Scroll_ScrollMax);
 25         FHScroll->OnArrowDec.Bind(this,&MyForm::Scroll_ArrowDec);
 26         FHScroll->OnArrowInc.Bind(this,&MyForm::Scroll_ArrowInc);
 27         FHScroll->OnPageDec.Bind(this,&MyForm::Scroll_PageDec);
 28         FHScroll->OnPageInc.Bind(this,&MyForm::Scroll_PageInc);
 29         FHScroll->OnTracking.Bind(this,&MyForm::Scroll_Tracking);
 30         FHScroll->OnThumbUp.Bind(this,&MyForm::Scroll_ThumbUp);
 31         FHScroll->OnPositionChanged.Bind(this,&MyForm::Scroll_PositionChanged);
 32         FHScroll->OnEndScroll.Bind(this,&MyForm::Scroll_EndScroll);
 33 
 34         FVScroll->OnScrollMin.Bind(this,&MyForm::Scroll_ScrollMin);
 35         FVScroll->OnScrollMax.Bind(this,&MyForm::Scroll_ScrollMax);
 36         FVScroll->OnArrowDec.Bind(this,&MyForm::Scroll_ArrowDec);
 37         FVScroll->OnArrowInc.Bind(this,&MyForm::Scroll_ArrowInc);
 38         FVScroll->OnPageDec.Bind(this,&MyForm::Scroll_PageDec);
 39         FVScroll->OnPageInc.Bind(this,&MyForm::Scroll_PageInc);
 40         FVScroll->OnTracking.Bind(this,&MyForm::Scroll_Tracking);
 41         FVScroll->OnThumbUp.Bind(this,&MyForm::Scroll_ThumbUp);
 42         FVScroll->OnPositionChanged.Bind(this,&MyForm::Scroll_PositionChanged);
 43         FVScroll->OnEndScroll.Bind(this,&MyForm::Scroll_EndScroll);
 44     }
 45 
 46     void Print(VUnicodeString Message)
 47     {
 48         FEdit->SetText(FEdit->GetText()+Message+L"\r\n");
 49         FEdit->Select(FEdit->GetText().Length(),0);
 50         FEdit->ScrollToCaret();
 51     }
 52 
 53     void Print(VL_Base* Sender , VUnicodeString Message)
 54     {
 55         VL_WinScroll* Scroll=dynamic_cast<VL_WinScroll*>(Sender);
 56         if(Scroll)
 57         {
 58             if(Scroll==FHScroll)
 59             {
 60                 Print(L"Horizontal , "+Message+L" = "+VUnicodeString(Scroll->GetPosition()));
 61             }
 62             else
 63             {
 64                 Print(L"Vertical , "+Message+L" = "+VUnicodeString(Scroll->GetPosition()));
 65             }
 66         }
 67     }
 68 
 69     void Scroll_ScrollMin(VL_Base* Sender)
 70     {
 71         Print(Sender,L"Min");
 72     }
 73 
 74     void Scroll_ScrollMax(VL_Base* Sender)
 75     {
 76         Print(Sender,L"Max");
 77     }
 78 
 79     void Scroll_ArrowDec(VL_Base* Sender)
 80     {
 81         Print(Sender,L"Arrow-");
 82     }
 83 
 84     void Scroll_ArrowInc(VL_Base* Sender)
 85     {
 86         Print(Sender,L"Arrow+");
 87     }
 88 
 89     void Scroll_PageDec(VL_Base* Sender)
 90     {
 91         Print(Sender,L"Page-");
 92     }
 93 
 94     void Scroll_PageInc(VL_Base* Sender)
 95     {
 96         Print(Sender,L"Page+");
 97     }
 98 
 99     void Scroll_Tracking(VL_Base* Sender)
100     {
101         Print(Sender,L"Tracking");
102     }
103 
104     void Scroll_ThumbUp(VL_Base* Sender)
105     {
106         Print(Sender,L"ThumbUp");
107     }
108 
109     void Scroll_PositionChanged(VL_Base* Sender)
110     {
111         Print(Sender,L"Changed");
112     }
113 
114     void Scroll_EndScroll(VL_Base* Sender)
115     {
116         Print(Sender,L"End");
117     }
118 
119 public:
120 
121     MyForm():VL_WinForm(true)
122     {
123         SetMaximizeBox(false);
124         SetBorder(vwfbSingle);
125         SetClientWidth(400);
126         SetClientHeight(400);
127         SetText(L"Vczh Form");
128         MoveCenter();
129         InitControls();
130         Show();
131     }
132 };
133 
134 void main()
135 {
136     new MyForm;
137     GetApplication()->Run();
138 }
    至于我是怎么解決GetPosition的呢?因為每一次操作Scroll Bar的Position都不會改,所以理所當然的,我要替它改……
 1     LRESULT VL_WinScroll::ProcessMessage(UINT Message , WPARAM& wParam , LPARAM& lParam , VBool& CallDefaultProcedure)
 2     {
 3         LRESULT Result=0;
 4         switch(Message)
 5         {
 6         case WM_VSCROLL_DISPATCHED:
 7         case WM_HSCROLL_DISPATCHED:
 8             switch(LOWORD(wParam))
 9             {
10             case SB_ENDSCROLL:
11                 OnEndScroll(this);
12                 break;
13             case SB_LEFT:
14                 OnScrollMin(this);
15                 OnPositionChanged(this);
16                 break;
17             case SB_RIGHT:
18                 OnScrollMax(this);
19                 OnPositionChanged(this);
20                 break;
21             case SB_LINELEFT:
22                 SetPosition(GetPosition()-1);
23                 OnArrowDec(this);
24                 OnPositionChanged(this);
25                 break;
26             case SB_LINERIGHT:
27                 SetPosition(GetPosition()+1);
28                 OnArrowInc(this);
29                 OnPositionChanged(this);
30                 break;
31             case SB_PAGELEFT:
32                 SetPosition(GetPosition()-GetPage());
33                 OnPageDec(this);
34                 OnPositionChanged(this);
35                 break;
36             case SB_PAGERIGHT:
37                 OnPageInc(this);
38                 SetPosition(GetPosition()+GetPage());
39                 OnPositionChanged(this);
40                 break;
41             case SB_THUMBPOSITION:
42                 {
43                     SCROLLINFO Info;
44                     GetInfo(Info);
45                     SetPosition(Info.nTrackPos);
46                     OnThumbUp(this);
47                     OnPositionChanged(this);
48                 }
49                 break;
50             case SB_THUMBTRACK:
51                 {
52                     SCROLLINFO Info;
53                     GetInfo(Info);
54                     SetPosition(Info.nTrackPos);
55                     OnTracking(this);
56                     OnPositionChanged(this);
57                 }
58                 break;
59             }
60             Result=VL_WinControl::ProcessMessage(Message,wParam,lParam,CallDefaultProcedure);
61             break;
62         default:
63             Result=VL_WinControl::ProcessMessage(Message,wParam,lParam,CallDefaultProcedure);
64         }
65         return Result;
66     }

posted on 2008-08-15 06:26 陳梓瀚(vczh) 閱讀(1443) 評論(1)  編輯 收藏 引用 所屬分類: C++

評論:
# re: Scroll Bar完成 2008-08-15 07:27 | 沈臻豪(foxtail)
滾動條終于出來啦 等了好久  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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久久精品色噜噜导演| 亚洲综合电影| 国产亚洲人成a一在线v站| 久久精品国产亚洲一区二区| 欧美一进一出视频| 91久久精品国产| 日韩亚洲欧美综合| 国产丝袜一区二区三区| 久热爱精品视频线路一| 欧美激情精品久久久久久黑人| 99riav久久精品riav| 亚洲午夜一区二区三区| 激情欧美国产欧美| 亚洲精品影院| 国产在线不卡精品| 亚洲欧洲一区二区三区久久| 欧美日韩在线三级| 亚洲精品一区二区网址 | 久久国产直播| 亚洲经典在线看| 亚洲激情视频在线| 国产欧美日韩麻豆91| 欧美顶级大胆免费视频| 国产精品理论片| 免费久久99精品国产自在现线| 欧美日韩免费看| 老牛影视一区二区三区| 欧美日韩免费观看一区=区三区| 欧美亚洲一区| 欧美成人69| 久久夜色精品一区| 欧美日韩国产小视频| 美女国产一区| 国产精品久久一区主播| 亚洲大胆人体视频| 国产视频一区二区在线观看| 国产精品香蕉在线观看| 亚洲国产毛片完整版| 亚洲最新视频在线| 怡红院精品视频在线观看极品| 亚洲精品视频一区| 亚洲国产美女精品久久久久∴| 亚洲一区视频| 亚洲视频碰碰| 欧美精品在线免费观看| 久久综合一区二区三区| 国产日韩欧美另类| 国产精品99久久久久久久vr | 亚洲第一中文字幕| 亚洲欧美文学| 欧美在线视屏| 国产精品美女久久久久aⅴ国产馆| 亚洲国产乱码最新视频| 在线观看精品视频| 午夜亚洲福利| 欧美成人蜜桃| 欧美成人官网二区| 影音先锋欧美精品| 欧美综合国产精品久久丁香| 欧美一区二区三区视频免费| 欧美视频精品在线观看| 亚洲精品网站在线播放gif| 在线日韩av| 久久男人资源视频| 欧美大片免费观看在线观看网站推荐| 国产日韩欧美中文| 欧美在线一区二区| 久久综合久久综合久久| 伊人久久大香线| 麻豆精品在线播放| 亚洲国产精品一区二区三区| 亚洲精品免费一区二区三区| 欧美国产日韩视频| 99国产精品私拍| 亚洲女同在线| 国产一区91| 久久久久综合网| 国内揄拍国内精品久久 | 久久精品国产清高在天天线| 国产欧美在线视频| 欧美淫片网站| 亚洲视频中文| 久久精品国产亚洲一区二区| 极品av少妇一区二区| 欧美成人xxx| 亚洲午夜视频| 久久香蕉精品| aa日韩免费精品视频一| 国产精品久久久久久久久| 香蕉久久国产| 亚洲第一区在线观看| 亚洲一区二区精品在线观看| 国产精品每日更新在线播放网址| 欧美中文字幕视频在线观看| 女同性一区二区三区人了人一| 亚洲精品一级| 国产亚洲综合精品| 久久久精彩视频| 午夜国产精品视频| 海角社区69精品视频| 欧美va亚洲va国产综合| 一个人看的www久久| 久久久xxx| 99精品欧美一区二区三区| 国产日韩欧美在线视频观看| 欧美成人一区二区在线| 午夜欧美视频| 亚洲精品欧美日韩| 久久这里只有| 性色av一区二区三区红粉影视| 激情文学综合丁香| 国产精品亚洲激情| 欧美人在线观看| 蜜臀a∨国产成人精品| 亚洲网友自拍| 亚洲精品乱码久久久久久蜜桃麻豆 | 美女视频一区免费观看| 亚洲欧美日韩一区在线观看| 亚洲人成啪啪网站| 巨乳诱惑日韩免费av| 欧美在线999| 亚洲一区二区在线观看视频| 亚洲精品一品区二品区三品区| 黄网动漫久久久| 国产欧美精品在线| 国产精品国产三级国产专播精品人| 久久综合九色综合久99| 欧美一区在线看| 欧美亚洲网站| 性久久久久久| 久久www免费人成看片高清| 亚洲欧美日韩一区| 亚洲欧美精品在线观看| 亚洲午夜伦理| 亚洲伊人一本大道中文字幕| 99视频精品全国免费| 最新高清无码专区| 91久久久久久久久| 亚洲欧洲三级| 一本色道久久综合亚洲精品高清 | 美女诱惑一区| 蜜臀久久99精品久久久久久9 | 久久综合九色| 六月天综合网| 欧美黄色aa电影| 欧美日韩国产欧| 国产精品白丝jk黑袜喷水| 欧美天堂亚洲电影院在线观看 | 香港成人在线视频| 欧美在线观看你懂的| 久久精品国产亚洲一区二区| 久久久久国色av免费观看性色| 久久精品成人欧美大片古装| 久久久久久69| 欧美激情精品久久久久久蜜臀| 欧美区一区二区三区| 国产精品久久9| 国产日韩亚洲欧美| 亚洲福利在线观看| 99ri日韩精品视频| 香蕉免费一区二区三区在线观看| 欧美中文字幕视频在线观看| 另类av一区二区| 亚洲精品综合在线| 亚洲一本大道在线| 久久久五月婷婷| 欧美日韩一区二区视频在线| 国产精品美女久久久久久久| 国外视频精品毛片| 亚洲精品国产精品国产自| 亚洲视频在线观看一区| 久久久久久久久综合| 亚洲国产精品综合| 午夜精品国产更新| 欧美风情在线观看| 国产欧美日韩一区二区三区在线| 亚洲二区在线| 亚洲免费视频观看| 欧美高清视频在线播放| 一区二区日韩免费看| 小处雏高清一区二区三区| 蜜臀av一级做a爰片久久| 国产精品日本一区二区| 91久久久久久久久久久久久| 亚洲欧美日本伦理| 亚洲黄色毛片| 久久精品99国产精品日本| 欧美日韩国内| 亚洲福利视频一区二区| 欧美一区成人| 99国产精品99久久久久久粉嫩| 久久精品国产成人| 国产精品一区一区三区| 一本色道久久99精品综合| 乱码第一页成人| 午夜视频一区| 国产精品成人午夜| 妖精视频成人观看www|