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

luqingfei@C++

為中華之崛起而崛起!
兼聽則明,偏聽則暗。

Win32匯編--使用資源--對話框--在對話框中使用子窗口控件(1)

 

使用資源對話框在對話框中使用子窗口控件

子窗口控件是一些Windows預定義類,它們實際上就是一個個以對話框為父窗口的子窗口。對于程序員來說,在對話框中使用它們的時候并不需要手工去逐一創建,只需要在對話框中定義就可以了,“對話框管理器”會在初始化對話框的時候,根據定義語句自動建立所有的子窗口。

 

1、子窗口控件的定義

       子窗口控件定義的一般語法是:

       CONTROL 文本, ID, , 風格, x, y, 寬度, 高度 [, 擴展風格]

       “文本”指控件的初始化值,“ID”是子窗口向對話框過程發送WM_COMMAND中用的ID值,“類”可以是按鈕(Button)、靜態(Static)、編輯(Edit)、滾動條(ScrollBar)、列表框(ListBox)和組合框(ComboBox),這些類都是Windows系統中已經預定義的,“對話框管理器”在初始化的時候把每一條控件定義語句轉換成下面的CreateWindow命令:

       invoke     CreateWindow, 類名, 文本, 風格, x, y, 寬度, 高度, 對話框窗口句柄, ID,

                     hInstance, NULL

正因為如此,所有可以用CreateWindow建立的子窗口都可以在資源中定義,只要知道要使用的類和風格就可以了。所以除了上面這些基本的類之外,對話框中還可以使用一些通用控件,如“日期”(SysDateTimePick32)、“月歷”(SysMonthCal32)、“熱鍵”(msctls_hotkey32)和“列表”(SysListView32)等,括號內是它們的類名,只要把定義語句的“類”寫成對應的名稱就可以了。

 

基于同一個預定義類的控件根據風格屬性的不同,外表可能完全不同,如單選鈕、復選框和分組框使用的類都是Button類,文本、圖標框、位圖框和線條等都是Static類。使用CONTROL語句定義的時候可能不是很直觀,所以Rc.exe資源編譯器允許使用另一種語法來書寫控件定義:

       控件名稱 [文本,] ID, x, y, 寬度, 高度 [, 風格] [, 擴展風格]

 

這里使用“控件名稱而不是“類”是因為這個名稱只是Rc.exe使用的縮寫,并不是真正的Windows類的名稱,“控件名稱”由Rc.exe解釋成“類”名,同時為它使用了幾種默認的風格,定義語句中風格屬性實際上是附加在默認風格上的,表5.4列出了每種控件使用的類和默認屬性,除了表中列出的默認屬性外,每種控件還被默認定義了WS_CHILDWS_VISIBLE屬性。

                     資源腳本中使用的控件名稱

控件名稱

說明

基于的類

默認窗口風格

PUSHBUTTON

按鈕

Button

BS_PUSHBUTTON, WS_TABSTOP

DEFPUSHBUTTON

默認按鈕

Button

BS_DEFPUSHBUTTON, WS_TABSTOP

CHECKBOX

復選框

Button

BS_CHECKBOX, WS_TABSTOP

AUTOCHECKBOX

自動復選框

Button

BS_AUTOCHECKBOX, WS_TABSTOP

STATE3

3態復選框

Button

BS_3STATE, WS_TABSTOP

AUTO2STATE

自動3態復選框

Button

BS_AUTO3STATE, WS_TABSTOP

RADIOBUTTON

單選框

Button

BS_RADIOBUTTON, WS_TABSTOP

AUTORADIOBUTTON

自動單選框

Button

BS_AUTORADIOBUTTON, WS_TABSTOP

GROUPBOX

分組框

Button

BS_GROUPBOX

SCROLLBAR

滾動條

ScrollBar

SBS_HORZ

CTEXT

居中文本

Static

SS_CENTER, WS_GROUP

LTEXT

左對齊文本

Static

SS_LEFT, WS_GROUP

RTEXT

右對齊文本

Static

SS_RIGHT, WS_GROUP

ICON

圖標框

Static

SS_ICON

EDITTEXT

文本編輯

Edit

ES_LEFT, WS_BORDER, WS_TABSTOP

COMBOBOX

組合框

ComboBox

CBS_SIMPLE, WS_TABSTOP

LISTBOX

列表框

ListBox

LBS_NOTIFY, WS_BORDER

 

看下面的例子:

GROUPBOX “選項”, -1, 55, 5, 120, 100

PUSHBUTTON “退出”, IDCANCEL, 255, 115, 50, 14

這兩條語句和下面的語句編譯后產生的二進制資源文件是一模一樣的:

CONTROL “選項”, -1, “Button”, BS_GROUPBOX | WS_TABSTOP, 55, 5, 120, 100

CONTROL “退出”, IDCANCEL, “Button”, BS_PUSHBUTTON | WS_TABSTOP, 255, 115, 50, 14

 

第一種語句的用法比第二種語句不但要直觀許多,而且不必書寫默認的窗口風格。

當用到的控件沒有縮寫語法時,那就必須用CONTROL定義了,下面的兩句分別定義了一條橫線和一個圖片框,它們并沒有縮寫的用法:

CONTROL “”, -1, “Static”, SS_ETCHEDHORZ | WS_CHILD | WS_VISIBLE, 60, 65, 110, 1

CONTROL BMP_ID, -1, “Static”, SS_BITMAP | WS_CHILD | WS_VISIBLE, 5, 5, 40, 95

 

下面以一個例子來演示各種子窗口控件的用法。

//Control.rc

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

#include        <resource.h>

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

#define     ICO_MAIN            0x1000      //圖標

#define     DLG_MAIN            0x1

#define     IDB_1               1

#define     IDB_2               2

#define     IDC_ONTOP           101

#define     IDC_SHOWBMP         102

#define     IDC_ALOW            103

#define     IDC_MODALFRAME      104

#define     IDC_THICKFRAME      105

#define     IDC_TITLETEXT       106

#define     IDC_CUSTOMTEXT      107

#define     IDC_BMP             108

#define     IDC_SCROLL          109

#define     IDC_VALUE           110

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

ICO_MAIN        ICON    "Main.ico"

IDB_1           BITMAP "Picture1.bmp"

IDB_2           BITMAP "Picture2.bmp"

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

DLG_MAIN        DIALOG 193, 180, 310, 134

STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME

CAPTION "對話框子窗口控件示例"

FONT 9, "宋體"

{

    GROUPBOX "選項", -1, 55, 5, 120, 100

    AUTOCHECKBOX "總在最前面", IDC_ONTOP, 65, 20, 100, 12

    AUTOCHECKBOX "顯示圖片", IDC_SHOWBMP, 65, 35, 100, 12

    AUTOCHECKBOX "允許更換圖片", IDC_ALOW, 65, 50, 100, 12

    CONTROL "", -1, "Static", SS_ETCHEDHORZ | WS_CHILD | WS_VISIBLE, 60, 65, 110, 1

    AUTORADIOBUTTON "模態邊框(&Modal Frame)", IDC_MODALFRAME, 65, 70, 100, 12, WS_TABSTOP

    AUTORADIOBUTTON "可變邊框(&Thick Frame)", IDC_THICKFRAME, 65, 85, 100, 12, WS_TABSTOP

    GROUPBOX "標題欄文字", -1, 180, 5, 125, 100, BS_GROUPBOX

    COMBOBOX IDC_TITLETEXT, 190, 20, 105, 70, CBS_DROPDOWNLIST | WS_TABSTOP

    LTEXT "自定義文字:", -1, 190, 40, 105, 10

    EDITTEXT IDC_CUSTOMTEXT, 190, 55, 105, 12

    LTEXT "請在此選擇顯示在標題欄上面的文字,或者選擇“自定義”后自行輸入", -1, 191, 73, 105, 26, WS_BORDER

    CONTROL "", -1, "Static", SS_ETCHEDHORZ | WS_CHILD | WS_VISIBLE, 5, 110, 300, 1

    DEFPUSHBUTTON "更換圖片(&C)", IDOK, 200, 115, 50, 14

    PUSHBUTTON "退出(&X)", IDCANCEL, 255, 115, 50, 14

    CONTROL IDB_1, IDC_BMP, "Static", SS_BITMAP | WS_CHILD | WS_VISIBLE, 5, 5, 40, 95

    SCROLLBAR IDC_SCROLL, 6, 118, 125, 10

    LTEXT "0" IDC_VALUE, 138, 119, 50, 8

}

 

 

//Control.asm

            .386

            .model flat, stdcall

            option casemap :none

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

; Include 文件定義

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

include         windows.inc

include         user32.inc

includelib      user32.lib

include         kernel32.inc

includelib      kernel32.lib

include         gdi32.inc

includelib      gdi32.lib

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

; Equ 等值定義

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

ICO_MAIN        equ     1000h

DLG_MAIN        equ     1

IDB_1           equ     1

IDB_2           equ     2

IDC_ONTOP       equ     101

IDC_SHOWBMP     equ     102

IDC_ALOW        equ     103

IDC_MODALFRAME equ     104

IDC_THICKFRAME equ     105

IDC_TITLETEXT   equ     106

IDC_CUSTOMTEXT equ     107

IDC_BMP         equ     108

IDC_SCROLL      equ     109

IDC_VALUE       equ     110

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

; 數據段

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

                    .data?

hInstance       dd      ?

hBmp1           dd      ?

hBmp2           dd      ?

dwPos           dd      ?

                    .const

szText1         db      'Hello, World!', 0

szText2         db      '嘿,你看到標題欄變了嗎?', 0

szText3         db      '自定義', 0

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

; 代碼段

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

                    .code

_ProcDlgMain    proc    uses ebx edi esi hWnd, wMsg, wParam, lParam

                local   @szBuffer[128]:byte

               

                mov     eax, wMsg

                .if     eax == WM_CLOSE

                        invoke EndDialog, hWnd, NULL

                        invoke DeleteObject, hBmp1

                        invoke DeleteObject, hBmp2

                .elseif eax == WM_INITDIALOG

;*******************************************************************************                

; 設置標題欄圖標

;*******************************************************************************

                        invoke LoadIcon, hInstance, ICO_MAIN

                        invoke SendMessage, hWnd, WM_SETICON, ICON_BIG, eax

;*******************************************************************************               

; 初始化組合框

;*******************************************************************************

                        invoke SendDlgItemMessage, hWnd, IDC_TITLETEXT, CB_ADDSTRING, 0, addr szText1

                        invoke SendDlgItemMessage, hWnd, IDC_TITLETEXT, CB_ADDSTRING, 0, addr szText2

                        invoke SendDlgItemMessage, hWnd, IDC_TITLETEXT, CB_ADDSTRING, 0, addr szText3

                        invoke SendDlgItemMessage, hWnd, IDC_TITLETEXT, CB_SETCURSEL, 0, 0

                        invoke GetDlgItem, hWnd, IDC_CUSTOMTEXT

                        invoke EnableWindow, eax, FALSE

                       

                        invoke LoadBitmap, hInstance, IDB_1

                        mov     hBmp1, eax

                        invoke LoadBitmap, hInstance, IDB_2

                        mov     hBmp2, eax

;*******************************************************************************               

; 初始化單選鈕和復選框

;*******************************************************************************

                        invoke CheckDlgButton, hWnd, IDC_SHOWBMP, BST_CHECKED

                        invoke CheckDlgButton, hWnd, IDC_ALOW, BST_CHECKED

                        invoke CheckDlgButton, hWnd, IDC_THICKFRAME, BST_CHECKED

;*******************************************************************************               

; 初始化滾動條

;*******************************************************************************

                        invoke SendDlgItemMessage, hWnd, IDC_SCROLL, SBM_SETRANGE, 0, 100

;*******************************************************************************

                .elseif eax == WM_COMMAND

                        mov     eax, wParam

                        .if     ax == IDCANCEL

                                invoke EndDialog, hWnd, NULL

                                invoke DeleteObject, hBmp1

                                invoke DeleteObject, hBmp2

;*******************************************************************************               

; 更換圖片

;*******************************************************************************

                        .elseif ax == IDOK

                                mov     eax, hBmp1

                                xchg    eax, hBmp2

                                mov     hBmp1, eax

                                invoke SendDlgItemMessage, hWnd, IDC_BMP, STM_SETIMAGE, IMAGE_BITMAP, eax

;*******************************************************************************               

; 設置是否“總在最前面”

;*******************************************************************************

                       .elseif ax == IDC_ONTOP

                                invoke IsDlgButtonChecked, hWnd, IDC_ONTOP

                                .if     eax == BST_CHECKED

                                        invoke SetWindowPos, hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE

                                .else

                                        invoke SetWindowPos, hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE

                                .endif

;*******************************************************************************               

; 演示隱藏和顯示圖片控件

;*******************************************************************************                       

                        .elseif ax == IDC_SHOWBMP

                                invoke GetDlgItem, hWnd, IDC_BMP

                                mov     ebx, eax

                                invoke IsWindowVisible, ebx

                                .if     eax

                                        invoke ShowWindow, ebx, SW_HIDE

                                .else

                                        invoke ShowWindow, ebx, SW_SHOW

                                .endif

;*******************************************************************************               

; 演示允許和灰化“更換圖片”按鈕

;*******************************************************************************                       

                        .elseif ax == IDC_ALOW

                                invoke IsDlgButtonChecked, hWnd, IDC_ALOW

                                .if     eax == BST_CHECKED

                                        mov     ebx, TRUE

                                .else

                                        xor     ebx, ebx

                                .endif

                                invoke GetDlgItem, hWnd, IDOK

                                invoke EnableWindow, eax, ebx

;*******************************************************************************

                        .elseif ax == IDC_MODALFRAME

                                invoke GetWindowLong, hWnd, GWL_STYLE

                                and eax, not WS_THICKFRAME

                                invoke SetWindowLong, hWnd, GWL_STYLE, eax

                        .elseif eax == IDC_THICKFRAME

                                invoke GetWindowLong, hWnd, GWL_STYLE

                                or eax, WS_THICKFRAME

                                invoke SetWindowLong, hWnd, GWL_STYLE, eax

;*******************************************************************************

; 演示處理下拉式組合框

;*******************************************************************************

                        .elseif ax == IDC_TITLETEXT

                                shr eax,16

;*******************************************************************************

                                .if ax == CBN_SELENDOK

                                    invoke SendDlgItemMessage, hWnd, IDC_TITLETEXT, CB_GETCURSEL, 0, 0

                                    .if eax == 2

                                        invoke GetDlgItem, hWnd, IDC_CUSTOMTEXT

                                        invoke EnableWindow, eax, TRUE

                                    .else

                                        mov ebx, eax

                                        invoke SendDlgItemMessage, hWnd, IDC_TITLETEXT, CB_GETLBTEXT, ebx, addr @szBuffer

                                        invoke SetWindowText, hWnd, addr @szBuffer

                                        invoke GetDlgItem, hWnd, IDC_CUSTOMTEXT

                                        invoke EnableWindow, eax, FALSE

                                    .endif

                              .endif

;*******************************************************************************

; 在文本框中輸入文字

;*******************************************************************************

                        .elseif ax == IDC_CUSTOMTEXT

                                invoke GetDlgItemText, hWnd, IDC_CUSTOMTEXT, addr @szBuffer, sizeof @szBuffer

                                invoke SetWindowText, hWnd, addr @szBuffer

                        .endif

;*******************************************************************************

; 處理滾動條消息

;*******************************************************************************

                .elseif eax == WM_HSCROLL

                        mov     eax, wParam

                        .if     ax == SB_LINELEFT

                                dec     dwPos

                        .elseif ax == SB_LINERIGHT

                                inc     dwPos

                        .elseif ax == SB_PAGELEFT

                                sub     dwPos, 10

                        .elseif ax == SB_PAGERIGHT

                                add     dwPos, 10

                        .elseif ax == SB_THUMBPOSITION || ax == SB_THUMBTRACK

                                mov     eax, wParam

                                shr     eax,16

                                mov     dwPos,eax

                        .else

                                mov     eax,TRUE

                                ret

                        .endif

                        cmp     dwPos, 0

                        jge     @F

                        mov     dwPos, 0

                        @@:

                        cmp     dwPos,100

                        jle     @F

                        mov     dwPos,100

                        @@:

                        invoke SetDlgItemInt, hWnd, IDC_VALUE, dwPos, FALSE

                        invoke SendDlgItemMessage, hWnd, IDC_SCROLL, SBM_SETPOS, dwPos, TRUE

;*******************************************************************************

                .else

                        mov     eax, FALSE

                                ret

                .endif

                mov     eax,TRUE

                ret                   

 

_ProcDlgMain    endp

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

start:

                invoke GetModuleHandle, NULL

                mov     hInstance, eax

                invoke DialogBoxParam, hInstance, DLG_MAIN, NULL, offset _ProcDlgMain, NULL

                invoke ExitProcess, NULL

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

                end     start

 

posted on 2010-09-16 15:25 luqingfei 閱讀(2024) 評論(0)  編輯 收藏 引用 所屬分類: Win32匯編程語言序設計

導航

<2011年3月>
272812345
6789101112
13141516171819
20212223242526
272829303112
3456789

統計

留言簿(6)

隨筆分類(109)

隨筆檔案(105)

Blogers

Game

Life

NodeJs

Python

Useful Webs

大牛

搜索

積分與排名

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲精品女av网站| 亚洲一二三四区| 亚洲综合色自拍一区| 亚洲精品自在久久| 亚洲毛片一区二区| 日韩一二在线观看| 国产精品99久久久久久久久| 一区二区三区毛片| 亚洲一区一卡| 久久午夜av| 欧美韩国日本综合| 一本色道久久综合狠狠躁篇的优点 | 亚洲高清二区| 亚洲乱亚洲高清| 亚洲字幕在线观看| 久久人体大胆视频| 欧美黑人多人双交| 亚洲色图自拍| 久久免费视频一区| 欧美日韩视频一区二区| 国产精品亚洲人在线观看| 韩日成人在线| 99pao成人国产永久免费视频| 午夜国产精品影院在线观看| 久久久久一区二区| 亚洲免费精品| 久久成人精品一区二区三区| 免费一级欧美片在线观看| 国产精品久久7| 亚洲一区成人| 久久久久久久久伊人| 欧美日本在线观看| 国产自产在线视频一区| 一区二区免费在线视频| 久久免费视频这里只有精品| 日韩一区二区高清| 乱人伦精品视频在线观看| 国产精品久久久久秋霞鲁丝 | 一本色道久久综合亚洲二区三区| 欧美亚洲综合久久| 亚洲精品偷拍| 欧美福利视频在线| 亚洲电影免费观看高清完整版在线 | 亚洲国产日韩一区二区| 午夜精品福利一区二区蜜股av| 欧美国产日韩一区| 久久九九精品| 国产一区二区你懂的| 午夜精品电影| 在线中文字幕日韩| 欧美日本精品一区二区三区| 精品成人一区| 老司机精品导航| 欧美一区深夜视频| 国产乱码精品一区二区三| 亚洲午夜久久久| 亚洲美女精品久久| 欧美激情在线| 亚洲视频导航| 99国产精品久久久久久久成人热| 欧美国产亚洲视频| 99国产精品| 99re8这里有精品热视频免费| 美女被久久久| 亚洲精品一区二区三区蜜桃久| 亚洲电影在线看| 久久精品一区中文字幕| 亚洲国产精品成人va在线观看| 久久久久国产一区二区三区| 午夜精品久久久久久久99水蜜桃| 国产农村妇女精品| 欧美一区二区三区四区视频| 午夜影视日本亚洲欧洲精品| 国内精品久久久久久久影视麻豆 | 欧美激情视频在线免费观看 欧美视频免费一 | 久久夜色精品国产噜噜av| 好吊一区二区三区| 欧美大胆人体视频| 欧美成年人视频| 欧美理论片在线观看| a91a精品视频在线观看| 99精品国产在热久久婷婷| 欧美日韩在线大尺度| 亚洲欧美韩国| 久久久久久香蕉网| 一本色道久久88精品综合| 亚洲欧美日韩专区| 亚洲国产精品一区二区www在线| 亚洲人成网站在线播| 欧美午夜片欧美片在线观看| 久久gogo国模裸体人体| 六月婷婷久久| 亚洲综合日韩| 免费观看在线综合色| 午夜精品久久久久久99热| 久久高清福利视频| 亚洲人成欧美中文字幕| 亚洲永久免费精品| 亚洲国语精品自产拍在线观看| 亚洲美女av网站| 激情久久婷婷| 亚洲一区二区三区色| 亚洲三级视频| 久久不射中文字幕| 亚洲性av在线| 免费一级欧美片在线观看| 欧美一区二区三区免费看| 欧美激情国产精品| 麻豆成人在线观看| 国产精品亚洲综合天堂夜夜| 亚洲福利视频一区二区| 国产欧美在线| 日韩系列在线| 尤物99国产成人精品视频| 亚洲自拍都市欧美小说| 亚洲特色特黄| 久热爱精品视频线路一| 久久精品在线观看| 国产精品色午夜在线观看| 亚洲精品一区二区三区婷婷月| 狠狠色丁香久久婷婷综合丁香| 亚洲视频电影图片偷拍一区| 日韩视频在线免费观看| 媚黑女一区二区| 久久午夜精品一区二区| 国产午夜精品一区二区三区视频| 一区二区三区产品免费精品久久75 | 欧美精品综合| 欧美激情一区二区| 伊大人香蕉综合8在线视| 午夜影院日韩| 久久av红桃一区二区小说| 国产久一道中文一区| 一区二区欧美日韩| 亚洲视频网在线直播| 欧美日韩18| 一本大道久久a久久精品综合| 一区二区不卡在线视频 午夜欧美不卡'| 亚洲一区免费| 国产区欧美区日韩区| 亚洲日韩成人| 亚洲激情网站免费观看| 久久久久99精品国产片| 久久精品视频免费| 国产一区二区三区久久久| 久久精品2019中文字幕| 麻豆国产精品777777在线| 亚洲电影在线观看| 欧美 日韩 国产 一区| 亚洲春色另类小说| 一本色道久久综合| 国产精品视频xxx| 性高湖久久久久久久久| 久久久久久9999| 在线成人h网| 欧美激情中文字幕乱码免费| 日韩视频一区二区| 亚洲欧美国产精品va在线观看| 国产精品中文字幕欧美| 久久噜噜亚洲综合| 亚洲精华国产欧美| 亚洲欧美日韩一区在线观看| 国产午夜精品久久久久久免费视| 久久久精品2019中文字幕神马| 欧美本精品男人aⅴ天堂| 日韩午夜激情| 国产偷国产偷亚洲高清97cao| 久久久亚洲精品一区二区三区| 亚洲精品久久久一区二区三区| 午夜影院日韩| 亚洲激情社区| 国产精品久久久久久久久久久久久| 午夜精品亚洲一区二区三区嫩草| 欧美国产精品久久| 午夜在线观看免费一区| 91久久夜色精品国产九色| 欧美日韩免费观看一区| 久久精品国产亚洲5555| 亚洲日本中文字幕| 久久野战av| 午夜日韩视频| 亚洲精品综合久久中文字幕| 国产美女精品免费电影| 欧美成人中文| 久久国产88| 亚洲在线电影| 9久re热视频在线精品| 欧美xx69| 六月婷婷一区| 久久精品道一区二区三区| 日韩一区二区高清| 亚洲国产精品99久久久久久久久| 国产精品一区在线播放| 欧美日韩在线不卡| 欧美国产一区二区在线观看| 久久九九精品| 久久久久久久激情视频| 午夜一级在线看亚洲| 亚洲一区二区欧美| 日韩午夜电影在线观看|