C++ 中滾動條的滾動問題
SCROLLINFO scrollinfo; GetScrollInfo(SB_HORZ, &scrollinfo, SIF_ALL); switch (nSBCode) { case SB_LINERIGHT: if (scrollinfo.nPos < scrollinfo.nMax){ scrollinfo.nPos += 10; SetScrollInfo(SB_HORZ, &scrollinfo); ScrollWindow(-10, 0);} break; }
使用 GetScrollInfo 得到滾動信息 將信息保存于 SCROLLINFO 類的數(shù)據(jù)中
然后根據(jù) nSBCode 來判斷是哪個滾動條的哪個動作,做了調(diào)整
下面列出滾動的相關(guān)函數(shù)
afx_msg void OnHScroll( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar );
各個參數(shù)的意義:
nSBCode
指定指示用戶滾動請求的滾動條代碼。 此參數(shù)可以是下列值之一:
SB_LEFT 滾動到最左側(cè)。
SB_ENDSCROLL 結(jié)束滾動。
SB_LINELEFT 滾動。
SB_LINERIGHT 滾動權(quán)限。
SB_PAGELEFT 滾動一頁。
SB_PAGERIGHT 滾動一頁權(quán)限。
SB_RIGHT 滾動到最右邊。
SB_THUMBPOSITION 為絕對位置的滾動。 當(dāng)前位置由 nPos 參數(shù)指定。
SB_THUMBTRACK 拖動到指定位置的滾動框。 當(dāng)前位置由 nPos 參數(shù)指定。
nPos
如果滾動條代碼是 SB_THUMBPOSITION 或 SB_THUMBTRACK,指定滾動框位置;否則,未使用。 基于初始滾動大小,nPos 可以為負(fù)的,因此如果需要,轉(zhuǎn)換到 int。
pScrollBar
如果滾動消息來自滾動條控件,其中包含指向該控件。 //如果是手動添加的滾動控件
如果用戶單擊窗口滾動條,此參數(shù)是 NULL。
指針可能是瞬態(tài)的,不應(yīng)存儲以供將來使用。
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
C語言使用scanf連續(xù)輸入字符串出現(xiàn)的問題
這篇文章主要介紹了C語言使用scanf連續(xù)輸入字符串出現(xiàn)的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12深入解析C++中的動態(tài)類型轉(zhuǎn)換與靜態(tài)類型轉(zhuǎn)換運算符
這篇文章主要介紹了C++中的動態(tài)類型轉(zhuǎn)換與靜態(tài)類型轉(zhuǎn)換運算符,即dynamic_cast與static_cast的用法,需要的朋友可以參考下2016-01-01在Centos7中使用vscode和gdb調(diào)試PG插件的方法
這篇文章主要介紹了在Centos7中使用vscode和gdb調(diào)試PG插件,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-09-09C語言從txt文件中逐行讀入數(shù)據(jù)存到數(shù)組中的實現(xiàn)方法
下面小編就為大家?guī)硪黄狢語言從txt文件中逐行讀入數(shù)據(jù)存到數(shù)組中的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12