目前共有16篇帖子。
【API】ScrollWindow和ScrollWindowEx的用法
11楼 巨大八爪鱼 2016-4-26 22:18
樓上是第三、四個參數都不為NULL的例子。

總的來說,第三個參數決定要把哪塊區域剪下來平移(如果為NULL就把整個客戶區剪下來平移),第四個參數是決定平移之後哪塊區域需要反映到螢幕上(如果為NULL的話就把所作的改動全部反映到螢幕上)。
平移後暴露出來的區域都會自動交給WM_PAINT處理。
12楼 巨大八爪鱼 2016-4-26 22:27
至於ScrollWindowEx函數,前四個完全一樣。
第六個是輸出參數,表示滾動後哪個區域暴露出來了。
例如在上面的程序中(160,50)(200,70)這塊40x20的矩形就被暴露出來了。
13楼 巨大八爪鱼 2016-4-26 22:36
第五個參數和第六個參數作用一樣,只不過是HRGN類型的變量(存放任意形狀的區域)。
14楼 巨大八爪鱼 2016-4-26 22:38

當重繪區域是不規則圖形時,HRGN能精確地保存這個區域。
15楼 巨大八爪鱼 2016-4-26 22:40

但是RECT不能精確保存這個區域。它只能表示重繪區域所在的最小矩形區域。
16楼 巨大八爪鱼 2016-4-27 10:17
//  返回值表示操作是否成功
BOOL ScrollDC(HDC hDC, int dx, int dy, const RECT *lprcScroll,  const RECT *lprcClip, HRGN hrgnUpdate, LPRECT lprcUpdate);
BOOL ScrollWindow(HWND hWnd, int XAmount, int YAmount, const RECT *lpRect, const RECT *lpClipRect);

// 返回值: 暴露出據矩形區域SIMPLEREGION,非矩形區域COMPLEXREGION,無暴露區域NULLREGION;操作失敗ERROR
int ScrollWindowEx(HWND hWnd, int dx, int dy, const RECT *prcScroll, const RECT *prcClip, HRGN hrgnUpdate, LPRECT prcUpdate, UINT flags);

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
 
 
©2010-2025 Arslanbar [手机版] [桌面版]
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。