• <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>
            幽幽
             
            posts - 51,  comments - 28,  trackbacks - 0

            滾動(dòng)控件(ScrollBar)


              滾動(dòng)條(ScrollBar)主要用來(lái)從某一預(yù)定義值范圍內(nèi)快速有效地進(jìn)行選擇。滾動(dòng)條分垂直滾動(dòng)條和水平滾動(dòng)條兩種。在滾動(dòng)條內(nèi)有一個(gè)滾動(dòng)框,用來(lái)表示當(dāng)前的值。用鼠標(biāo)單擊滾動(dòng)條,可以使?jié)L動(dòng)框移動(dòng)一頁(yè),鼠標(biāo)單擊滾動(dòng)條兩端的剪頭可以使?jié)L動(dòng)框移動(dòng)一行,也可以直接拖動(dòng)滾動(dòng)框。許多窗口控件如列表框和組合框等都帶有滾動(dòng)條子窗口。Win32的滾動(dòng)條支持比例滾動(dòng)框,即用滾動(dòng)框的大小來(lái)反映頁(yè)相對(duì)于整個(gè)范圍的大小。
              當(dāng)CreateWindowEx創(chuàng)建滾動(dòng)條時(shí),其風(fēng)格常數(shù)中帶SBS_VERT為水平滾動(dòng)條,不帶SBS_VERT或帶SBS_HORZ為垂直滾動(dòng)條。
              創(chuàng)建控件時(shí)應(yīng)初始化滾動(dòng)條的各種參數(shù)。
              應(yīng)用程序可以通過(guò)調(diào)用SendMessage向控件發(fā)送如下消息來(lái)設(shè)定控件各種參數(shù)。
            uMsg wParam lParam 說(shuō)明
            SBM_ENABLE_ARROWS ESB_DISABLE_BOTH 0 禁止雙向滾動(dòng)剪頭
            ESB_DISABLE_DOWN 0 禁止向下滾動(dòng)剪頭
            ESB_DISABLE_LTUP 0 禁止向上和向左滾動(dòng)剪頭
            ESB_DISABLE_LEFT 0 禁止向左滾動(dòng)剪頭
            ESB_DISABLE_RTDN 0 禁止向下和向右滾動(dòng)剪頭
            ESB_DISABLE_UP 0 禁止向上滾動(dòng)剪頭
            ESB_ENABLE_BOTH 0 允許雙向滾動(dòng)剪頭(撤消各種禁止)
            SBM_SETPOS 指定位置 TRUE 設(shè)置滾動(dòng)框位置,并重繪控件
            FALSE 設(shè)置滾動(dòng)框位置,不重繪控件
            SBM_SETRANGE 最小值 最大值 設(shè)置滾動(dòng)框位置的變化范圍
            SBM_SETRANGEREDRAW 最小值 最大值 設(shè)置滾動(dòng)框位置的變化范圍,并重繪控件
            SBM_SETSCROLLINFO TRUE或FALSE SCROLLINFO結(jié)構(gòu)指針 本消息通過(guò)一個(gè)SCROLLINFO結(jié)構(gòu)來(lái)同時(shí)指定控件的多種參數(shù),具體指定哪些參數(shù)由結(jié)構(gòu)中的fMask成員確定。wParam指定是否重繪控件,詳見(jiàn)“SCROLLINFO結(jié)構(gòu)”
              當(dāng)用戶在滾動(dòng)條控件上進(jìn)行各種操作時(shí),其父窗口將收到WM_HSCROLL或WM_VSCROLL通知消息,同時(shí)wParam的低16位帶有如下表的消息代碼(nScrollCode),wParam的高16位帶滾動(dòng)框的指定位置(nPos),該值在消息代碼等于SB_THUMBPOSITION或SB_THUMBTRACK時(shí)才有效。lParam帶控件句柄(hwndScrollBar)。
              應(yīng)用程序可以根據(jù)消息代碼做相應(yīng)的操作,重新設(shè)置滾動(dòng)框位置,控件本身是不會(huì)改變滾動(dòng)框位置的。
            消息代碼 動(dòng)作 響應(yīng)
            SB_LINEUP
            SB_LINELEFT
            用戶點(diǎn)擊了向上(左)剪頭 滾動(dòng)框位置減一,客戶窗口向上(左)滾動(dòng)一行。
            注:這兩個(gè)代碼數(shù)值相等,因此可以混用,下同。
            SB_LINEDOWN
            SB_LINERIGHT
            用戶點(diǎn)擊了向下(右)剪頭 滾動(dòng)框位置加一,客戶窗口向下(右)滾動(dòng)一行。
            SB_PAGEUP
            SB_PAGELEFT
            用戶點(diǎn)擊了滾動(dòng)框以上(左)剪桿 滾動(dòng)框位置減去一個(gè)大單位,客戶窗口向上(左)滾動(dòng)一頁(yè)。
            SB_PAGEDOWN
            SB_PAGERIGHT
            用戶點(diǎn)擊了滾動(dòng)框以下(右)剪桿 滾動(dòng)框位置加上一個(gè)大單位,客戶窗口向下(右)滾動(dòng)一頁(yè)。
            SB_THUMBPOSITION 用戶拖動(dòng)并釋放滾動(dòng)框到指定位置 設(shè)定滾動(dòng)框到指定位置。客戶窗口滾動(dòng)到指定位置。
            SB_THUMBTRACK 用戶正在拖動(dòng)滾動(dòng)框 設(shè)定滾動(dòng)框到指定位置。客戶窗口滾動(dòng)到指定位置。如果應(yīng)用程序需要快速瀏覽窗口,可以響應(yīng)本消息重繪窗口,如果不需要快速瀏覽,可以等待收到SB_THUMBPOSITION消息時(shí)重繪窗口。
            SB_ENDSCROLL 用戶釋放按下剪頭或剪桿的鼠標(biāo) 無(wú)須做任何響應(yīng)
              應(yīng)用程序可以通過(guò)調(diào)用SendMessage向控件發(fā)送如下消息來(lái)取得當(dāng)前控件各種參數(shù)。
            uMsg wParam lParam 說(shuō)明
            SBM_GETPOS 0 0 返回滾動(dòng)框當(dāng)前位置。
            SBM_GETRANGE 最小值地址指針 最大值地址指針 在指定地址中填入32位的滾動(dòng)框位置的變化范圍
            SBM_GETSCROLLINFO 0 SCROLLINFO結(jié)構(gòu)指針 在一個(gè)SCROLLINFO結(jié)構(gòu)中返回控件的多種參數(shù),必須事先設(shè)定結(jié)構(gòu)的fMask成員來(lái)確定具體要取得哪些參數(shù)。詳見(jiàn)“SCROLLINFO結(jié)構(gòu)”
              當(dāng)控件需要重畫時(shí)向每父窗口發(fā)送WM_CTLCOLORSCROLLBAR消息,同時(shí)在wParam中帶控件的設(shè)備場(chǎng)景句柄(hDC),lParam中帶控件句柄。如果應(yīng)用程序響應(yīng)這個(gè)消息并返回一個(gè)畫刷(brush)句柄,控件將根據(jù)這個(gè)句柄繪制背景色。

            SCROLLINFO結(jié)構(gòu):
            SCROLLINFO STRUCT
                        cbSize        DWORD      ?
                        fMask         DWORD      ?
                        nMin          DWORD      ?
                        nMax          DWORD      ?
                        nPage         DWORD      ?
                        nPos          DWORD      ?
                        nTrackPos     DWORD      ?
                        SCROLLINFO ENDS
            成員說(shuō)明:
              cbSize: SCROLLINFO結(jié)構(gòu)長(zhǎng)度字節(jié)數(shù),該值在設(shè)置和查詢參數(shù)時(shí)都必須填寫。
              fMask: 指定結(jié)構(gòu)中的哪些成員是有效,該值共有如下5種選擇,可以選擇多種用“OR”組合起來(lái),該值在設(shè)置和查詢參數(shù)時(shí)都必須填寫。
                SIF_ALL      :整個(gè)結(jié)構(gòu)都有效
                SIF_DISABLENOSCROLL:該值僅在設(shè)定參數(shù)時(shí)使用,視控件參數(shù)設(shè)定的需要來(lái)對(duì)本結(jié)構(gòu)的成員進(jìn)行取舍。
                SIF_PAGE      :nPage成員有效
                SIF_POS      :nPos成員有效
                SIF_RANGE     :nMin和nMax成員有效
              nMin:滾動(dòng)范圍最小值
              nMax:滾動(dòng)范圍最大值
              nPage:頁(yè)尺寸,用來(lái)確定比例滾動(dòng)框的大小
              nPos:滾動(dòng)框的位置
              nTrackPos:拖動(dòng)時(shí)滾動(dòng)框的位置,該參數(shù)只能查詢,不能設(shè)置。
             

            posted on 2008-07-21 09:57 幽幽 閱讀(1769) 評(píng)論(3)  編輯 收藏 引用 所屬分類: Windows

            FeedBack:
            # re: 滾動(dòng)控件(ScrollBar)
            2008-07-21 13:23 | foxtail
            總之GUI開(kāi)發(fā)總是不那么優(yōu)雅  回復(fù)  更多評(píng)論
              
            # re: 滾動(dòng)控件(ScrollBar)
            2008-07-22 03:11 | 幽幽
            @foxtail
            何謂"優(yōu)雅"?  回復(fù)  更多評(píng)論
              
            # re: 滾動(dòng)控件(ScrollBar)
            2008-07-22 07:53 | foxtail
            優(yōu)雅就是簡(jiǎn)單的邏輯
            應(yīng)該說(shuō)GUI應(yīng)該存在一種語(yǔ)言,專門描述界面
            而不是搞在程序里,程序應(yīng)該只處理數(shù)據(jù)或者業(yè)務(wù)。而界面應(yīng)該獨(dú)立出來(lái)  回復(fù)  更多評(píng)論
              

            <2025年6月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            常用鏈接

            留言簿(6)

            隨筆分類(35)

            隨筆檔案(51)

            文章分類(3)

            文章檔案(3)

            相冊(cè)

            我的鏈接

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久中文精品无码中文字幕| 97视频久久久| 国产精品一久久香蕉国产线看观看| A级毛片无码久久精品免费| 久久夜色精品国产欧美乱| 精品国产VA久久久久久久冰| 久久精品无码免费不卡| 久久久久av无码免费网| 97精品国产91久久久久久| 久久精品国产精品亚洲艾草网美妙| 日韩十八禁一区二区久久| 久久久久久久97| 亚洲伊人久久成综合人影院 | 色婷婷综合久久久中文字幕| AV无码久久久久不卡蜜桃 | 日产精品久久久久久久| 97久久超碰成人精品网站| 久久综合鬼色88久久精品综合自在自线噜噜| 久久亚洲精品国产精品婷婷| 99热精品久久只有精品| 精品久久久噜噜噜久久久| 久久国产精品免费一区| 久久精品国产影库免费看| 蜜臀av性久久久久蜜臀aⅴ | 久久精品亚洲一区二区三区浴池 | 欧洲人妻丰满av无码久久不卡| 久久精品国产一区二区| 久久国产精品成人免费| 精品久久久久久国产潘金莲| 无码精品久久久久久人妻中字| 亚洲国产日韩欧美久久| 四虎影视久久久免费观看| 久久99精品国产麻豆不卡| 国产精品综合久久第一页| 色综合久久最新中文字幕| 国产精品天天影视久久综合网| 久久久av波多野一区二区| 久久婷婷五月综合色奶水99啪| 亚洲va久久久噜噜噜久久天堂| 无码国内精品久久综合88| 亚洲综合熟女久久久30p|