亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? scrollwnd.c

?? Wince.Net平臺上使用標(biāo)準(zhǔn)API實現(xiàn)的控件界面
?? C
字號:
//======================================================================
// ScrollWnd - Scroll bar control window code
//
// Written for the book Programming Windows CE
// Copyright (C) 1998 Douglas Boling
//======================================================================
#include <windows.h>                 // For all that Windows stuff
#include "Ctlview.h"                 // Program-specific stuff

extern HINSTANCE hInst;
//----------------------------------------------------------------------
// Global data
//
// Message dispatch table for ScrollWndWindowProc
const struct decodeUINT ScrollWndMessages[] = {
    WM_CREATE, DoCreateScrollWnd,
    WM_HSCROLL, DoVScrollScrollWnd,
    WM_VSCROLL, DoVScrollScrollWnd,
};

// Structure defining the controls in the window
CTLWNDSTRUCT  Scrolls [] = {
    {TEXT ("Scrollbar"), IDC_LRSCROLL, TEXT (""),
     10,  10, 150,  23, SBS_HORZ},

    {TEXT ("Scrollbar"), IDC_UDSCROLL, TEXT (""),
     180,  10,  23, 150, SBS_VERT},
};

// Structure labeling the scroll bar control scroll codes for WM_VSCROLL
NOTELABELS nlVScroll[] = {{TEXT ("SB_LINEUP       "), 0},
                          {TEXT ("SB_LINEDOWN     "), 1},
                          {TEXT ("SB_PAGEUP       "), 2},
                          {TEXT ("SB_PAGEDOWN     "), 3},
                          {TEXT ("SB_THUMBPOSITION"), 4},
                          {TEXT ("SB_THUMBTRACK   "), 5},
                          {TEXT ("SB_TOP          "), 6},
                          {TEXT ("SB_BOTTOM       "), 7},
                          {TEXT ("SB_ENDSCROLL    "), 8},
};
// Structure labeling the scroll bar control scroll codes for WM_HSCROLL
NOTELABELS nlHScroll[] = {{TEXT ("SB_LINELEFT     "), 0},
                          {TEXT ("SB_LINERIGHT    "), 1},
                          {TEXT ("SB_PAGELEFT     "), 2},
                          {TEXT ("SB_PAGERIGHT    "), 3},
                          {TEXT ("SB_THUMBPOSITION"), 4},
                          {TEXT ("SB_THUMBTRACK   "), 5},
                          {TEXT ("SB_LEFT         "), 6},
                          {TEXT ("SB_RIGHT        "), 7},
                          {TEXT ("SB_ENDSCROLL    "), 8},
};
//----------------------------------------------------------------------
// InitScrollWnd - ScrollWnd window initialization
//
int InitScrollWnd (HINSTANCE hInstance) {
    WNDCLASS wc;

    // Register application ScrollWnd window class.
    wc.style = 0;                             // Window style
    wc.lpfnWndProc = ScrollWndProc;           // Callback function
    wc.cbClsExtra = 0;                        // Extra class data
    wc.cbWndExtra = 0;                        // Extra window data
    wc.hInstance = hInstance;                 // Owner handle
    wc.hIcon = NULL,                          // Application icon
    wc.hCursor = NULL;                        // Default cursor
    wc.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
    wc.lpszMenuName =  NULL;                  // Menu name
    wc.lpszClassName = SCROLLWND;             // Window class name

    if (RegisterClass (&wc) == 0) return 1;

    return 0;
}
//======================================================================
// Message handling procedures for ScrollWindow
//----------------------------------------------------------------------
// ScrollWndProc - Callback function for application window
//
LRESULT CALLBACK ScrollWndProc (HWND hWnd, UINT wMsg, WPARAM wParam,
                                LPARAM lParam) {
    INT i;
    //
    // Search message list to see if we need to handle this
    // message.  If in list, call procedure.
    //
    for (i = 0; i < dim(ScrollWndMessages); i++) {
        if (wMsg == ScrollWndMessages[i].Code)
            return (*ScrollWndMessages[i].Fxn)(hWnd, wMsg, wParam, lParam);
    }
    return DefWindowProc (hWnd, wMsg, wParam, lParam);
}
//----------------------------------------------------------------------
// DoCreateScrollWnd - Process WM_CREATE message for window.
//
LRESULT DoCreateScrollWnd (HWND hWnd, UINT wMsg, WPARAM wParam,
                           LPARAM lParam) {
    INT i;

    for (i = 0; i < dim(Scrolls); i++) {
        CreateWindow (Scrolls[i].szClass, Scrolls[i].szTitle,
                      Scrolls[i].lStyle | WS_VISIBLE | WS_CHILD,
                      Scrolls[i].x, Scrolls[i].y, Scrolls[i].cx,
                      Scrolls[i].cy,
                      hWnd, (HMENU) Scrolls[i].nID, hInst, NULL);
    }
    return 0;
}
//----------------------------------------------------------------------
// DoVScrollScrollWnd - Process WM_VSCROLL message for window.
//
LRESULT DoVScrollScrollWnd (HWND hWnd, UINT wMsg, WPARAM wParam,
                            LPARAM lParam) {
    TCHAR szOut[128];
    SCROLLINFO si;
    INT i, sPos;

    // Update the report window.
    if (GetDlgItem (hWnd, 101) == (HWND)lParam) {

        for (i = 0; i < dim(nlVScroll); i++) {
            if (LOWORD (wParam) == nlVScroll[i].wNotification) {
                lstrcpy (szOut, nlVScroll[i].pszLabel);
                break;
            }
        }
        if (i == dim(nlVScroll))
            wsprintf (szOut, TEXT ("notification: %x"), HIWORD (wParam));
    } else {
        for (i = 0; i < dim(nlHScroll); i++) {
            if (LOWORD (wParam) == nlHScroll[i].wNotification) {
                lstrcpy (szOut, nlHScroll[i].pszLabel);
                break;
            }
        }
        if (i == dim(nlHScroll))
            wsprintf (szOut, TEXT ("notification: %x"), HIWORD (wParam));
    }
    SendMessage (GetParent (hWnd), MYMSG_ADDLINE, -1, (LPARAM)szOut);

    // Get scroll bar position.
    si.cbSize = sizeof (si);
    si.fMask = SIF_POS;
    GetScrollInfo ((HWND)lParam, SB_CTL, &si);
    sPos = si.nPos;

    // Act on the scroll code.
    switch (LOWORD (wParam)) {
    case SB_LINEUP:      // Also SB_LINELEFT
        sPos -= 2;
        break;

    case SB_LINEDOWN:    // Also SB_LINERIGHT
        sPos += 2;
        break;

    case SB_PAGEUP:      // Also SB_PAGELEFT
        sPos -= 10;
        break;

    case SB_PAGEDOWN:    // Also SB_PAGERIGHT
        sPos += 10;
        break;

    case SB_THUMBPOSITION:
        sPos = HIWORD (wParam);
        break;
    }
    // Check range.
    if (sPos < 0)
        sPos = 0;
    if (sPos > 100)
        sPos = 100;

    // Update scrollbar position.
    si.cbSize = sizeof (si);
    si.nPos = sPos;
    si.fMask = SIF_POS;
    SetScrollInfo ((HWND)lParam, SB_CTL, &si, TRUE);
    return 0;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人激情图片网| 依依成人综合视频| 日韩免费电影网站| 欧美自拍偷拍一区| 色婷婷久久久综合中文字幕| 国产在线一区二区| 日本成人在线电影网| 婷婷成人综合网| 日韩精品五月天| 夜色激情一区二区| 丝瓜av网站精品一区二区| 五月综合激情网| 精品一区二区三区在线播放 | 成人免费福利片| 成人午夜免费电影| av电影天堂一区二区在线| 91丝袜国产在线播放| 欧美日韩综合在线免费观看| 欧美高清精品3d| 久久精品一区二区三区不卡| 久久久久久久久久久久电影| 国产亚洲女人久久久久毛片| 日韩一区日韩二区| 天天av天天翘天天综合网| 久久99国产精品麻豆| 国产不卡在线视频| 欧美色国产精品| 久久精品亚洲精品国产欧美 | 国产精品资源在线看| av午夜一区麻豆| 欧美日精品一区视频| 久久亚洲一区二区三区四区| 亚洲日本免费电影| 美女视频黄免费的久久| 成人精品在线视频观看| 欧美久久婷婷综合色| 国产欧美精品一区二区三区四区| 中文字幕中文字幕在线一区| 日韩在线一区二区三区| 成人激情动漫在线观看| 日韩一区二区在线观看| 国产精品久久久久久一区二区三区| 亚洲午夜久久久| 成人理论电影网| 日韩欧美色综合| 亚洲午夜视频在线| 99久久久久久| 国产婷婷色一区二区三区| 视频一区在线视频| 日本高清不卡在线观看| 国产清纯白嫩初高生在线观看91 | 99国产精品久久久久久久久久 | 国产精品一区在线| 欧美精选一区二区| 亚洲欧美另类在线| 粉嫩aⅴ一区二区三区四区五区| 欧美日韩精品专区| 亚洲欧美国产高清| 成人精品亚洲人成在线| 精品国产成人在线影院| 五月婷婷综合在线| 色噜噜狠狠成人网p站| 国产精品免费网站在线观看| 狠狠色丁香婷婷综合久久片| 在线电影院国产精品| 亚洲一区二区综合| 色狠狠桃花综合| 亚洲女女做受ⅹxx高潮| www.一区二区| 中文字幕字幕中文在线中不卡视频| 国产成人小视频| 国产欧美日韩久久| 成人小视频免费在线观看| 久久久噜噜噜久噜久久综合| 久久97超碰国产精品超碰| 制服丝袜一区二区三区| 日本成人在线看| 精品久久久久久久久久久久久久久久久| 午夜免费久久看| 欧美日韩午夜影院| 日韩vs国产vs欧美| 2020国产精品| 成熟亚洲日本毛茸茸凸凹| 国产精品麻豆欧美日韩ww| av亚洲精华国产精华精华| 亚洲精品免费视频| 欧美性做爰猛烈叫床潮| 五月激情综合色| 欧美tickle裸体挠脚心vk| 国产在线视频精品一区| 国产精品水嫩水嫩| 91黄色免费看| 青青草精品视频| 国产欧美日韩不卡| 日本乱码高清不卡字幕| 日本一不卡视频| 国产欧美va欧美不卡在线| 91色.com| 蜜桃av噜噜一区二区三区小说| 精品美女一区二区三区| www.亚洲激情.com| 日本成人在线电影网| 中文字幕av一区二区三区免费看 | 久久av老司机精品网站导航| 久久综合久久综合久久综合| 成人精品一区二区三区四区 | 成人福利视频在线看| 亚洲制服丝袜av| 欧美精品一区二区三区高清aⅴ | 欧美国产一区二区在线观看| 91在线观看高清| 免费观看在线色综合| 中文天堂在线一区| 欧美一区二区三区在线| 国产91清纯白嫩初高中在线观看| 亚洲一区二区三区爽爽爽爽爽| 欧美成人猛片aaaaaaa| 色8久久精品久久久久久蜜| 久久99精品久久只有精品| 亚洲精品成人在线| 337p粉嫩大胆色噜噜噜噜亚洲 | 久久久久一区二区三区四区| 欧美亚洲综合一区| 成人丝袜高跟foot| 久久国产婷婷国产香蕉| 亚洲精品免费在线观看| 中文字幕精品在线不卡| 日韩精品影音先锋| 欧美精品v日韩精品v韩国精品v| 成人av网站免费观看| 国产在线精品一区二区夜色 | 国产二区国产一区在线观看| 亚洲国产乱码最新视频| 亚洲国产精品成人综合色在线婷婷| 91精品国产综合久久福利软件 | 国产自产高清不卡| 舔着乳尖日韩一区| 亚洲综合色区另类av| 亚洲欧洲精品一区二区精品久久久 | 日韩美女在线视频| 欧美日韩中文精品| 日本韩国一区二区三区| av男人天堂一区| 成人一级片网址| 丁香另类激情小说| 国产一区二区三区在线观看免费 | 日韩天堂在线观看| 欧美久久久久久蜜桃| 精品视频999| 欧美影院精品一区| 欧美色综合久久| 在线播放中文字幕一区| 欧美一区二区三区在线| 欧美不卡一区二区三区| 欧美一级欧美三级| 精品国产乱码久久久久久免费| 欧美久久一二区| 欧美成人午夜电影| 久久免费精品国产久精品久久久久| 日韩免费观看2025年上映的电影| 欧美大度的电影原声| 精品欧美一区二区在线观看| 日韩一卡二卡三卡国产欧美| 欧美成人a∨高清免费观看| 日韩无一区二区| 亚洲视频狠狠干| 亚洲午夜久久久久| 久久机这里只有精品| 国产一区二区三区四区五区入口| 国产呦精品一区二区三区网站| 国产乱码精品1区2区3区| 成人网页在线观看| 91成人看片片| 日韩欧美国产三级电影视频| 久久久久久久网| 亚洲欧美色图小说| 日韩高清欧美激情| 国产成人av资源| 欧美日韩在线电影| 精品国产第一区二区三区观看体验| 中文一区在线播放| 首页国产丝袜综合| 国产福利91精品一区| 欧美日韩中文一区| 中文幕一区二区三区久久蜜桃| 亚洲国产一区在线观看| 精品一区二区免费看| 色综合天天综合网天天看片| 欧美丰满少妇xxxxx高潮对白 | 在线电影国产精品| 欧美激情综合在线| 视频一区在线视频| 99久久婷婷国产综合精品| 91精品国产综合久久久久久久久久 | 国产精品一区二区免费不卡 | 亚洲一区二区四区蜜桃| 国产综合久久久久影院| 欧美主播一区二区三区| 国产精品色哟哟网站| 免费成人av在线播放|