<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇開(kāi)發(fā)語(yǔ)言培訓(xùn)專區(qū)VB語(yǔ)言 → VB編程的必備技巧


      共有6301人關(guān)注過(guò)本帖樹(shù)形打印

    主題:VB編程的必備技巧

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


    加好友 發(fā)短信
    等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
    VB編程的必備技巧  發(fā)帖心情 Post By:2010-12-14 12:04:08

    ---- 對(duì)編程者來(lái)說(shuō),VB很容易上手,但要深入、靈活地駕馭它還要下一番功夫。筆者在這里介紹幾個(gè)較為典型的編程技巧,希望能對(duì)廣大VB愛(ài)好者有所幫助。

    ---- 一.怎樣創(chuàng)建自定義的光標(biāo)

    ---- 1.當(dāng)在設(shè)計(jì)一個(gè)應(yīng)用程序時(shí),Visual Basic允許程序員將許多控件的MousePointer屬性設(shè)計(jì)成12個(gè)預(yù)先定義好的鼠標(biāo)光標(biāo)之一。然而,有些程序員或許會(huì)希望顯示一個(gè)預(yù)定義形狀之外的光標(biāo)。本文說(shuō)明如何創(chuàng)建一個(gè)不同的鼠標(biāo)指針(光標(biāo)),包括為一個(gè)沒(méi)有MousePointer屬性的控件創(chuàng)建光標(biāo)。

    ----要在Visual Basic應(yīng)用程序中將光標(biāo)(鼠標(biāo)指針)改變成個(gè)不同的形狀,可以添加代碼來(lái)改變希望監(jiān)視的控件的MouseMove和DragOver事件。

    ----MouseMove事件所包含的代碼用于觸發(fā)該控件的Drag方法。當(dāng)鼠標(biāo)在被選中的控件上移動(dòng)的時(shí)候,輪流顯示新的鼠標(biāo)指針。當(dāng)鼠標(biāo)指針離開(kāi)該控件時(shí),則DragOver事件被觸發(fā)。在Visual Basic程序中,可以重新復(fù)位此Drag屬性,以便以前的鼠標(biāo)指針能夠被再次顯示出來(lái)。

    ---- 2.下面的樣例程序?qū)崿F(xiàn)當(dāng)鼠標(biāo)指針移動(dòng)到一個(gè)文件列表框控件上時(shí),將其改變成不同的形狀。

    ---- 首先采用缺省的方法建立Form1。在Form1上添加一個(gè)文件列表框控件,采用缺省的方法建立File1。將File1控件的DragIcon屬性設(shè)置為所選擇的.ICO文件。

    ---- 將如下代碼添加到File1的MouseMove事件中:

    Private Sub File1-MouseMove(ButtonAs
    Integer, Shift As Integer, X As Single, Y As Single)
    File1.Drag 1 'icon on
    End Sub
    ---- 將如下代碼添加到Form1的DragOver事件中:
    Private Sub Form-DragOver(Source As Control,
    X As Single, Y As Single, State As Integer)
    File1.Drag 0 ′icon off
    End Sub
    ---- 按下F5功能鍵執(zhí)行此程序。得到的運(yùn)行結(jié)果是:將鼠標(biāo)指針移動(dòng)到該文件列表框控件上時(shí),程序?qū)阉x中的.ICO文件作為缺省的鼠標(biāo)光標(biāo);將鼠標(biāo)指針離開(kāi)該控件時(shí),光標(biāo)則會(huì)自動(dòng)恢復(fù)為缺省的形狀。
    ---- 二.怎樣在窗體上點(diǎn)鼠標(biāo)右鍵產(chǎn)生一個(gè)彈出式選單(PopUp Menu)?

    ---- 大家都知道,在Windows95/98/2000的桌面和許多流行軟件的視窗中,當(dāng)我們點(diǎn)鼠標(biāo)右鍵時(shí),會(huì)在鼠標(biāo)的當(dāng)前位置彈出一個(gè)快捷選單。許多愛(ài)好編程的朋友是不是也希望能在自己的程序里有類(lèi)似的功能呢?其實(shí),這并不困難。筆者經(jīng)過(guò)一番努力,在VB下找出一個(gè)通用的方法,供大家分享。

    ---- 要實(shí)現(xiàn)上述功能,需分兩個(gè)步驟:

    ---- 1. 利用VB的選單編輯器(Menu Editor)編輯你希望彈出的選單及子選單,注意,要將選單的Visible屬性設(shè)置為:False。

    ---- 2. 在窗體(Form1)的MouseDown事件中編寫(xiě)程序,來(lái)激發(fā)編輯好的選單,假設(shè)選單名為PopMenu,程序源碼如下:

    Private Sub Form-MouseDown
    (Button As Integer, Shift As Integer,
    X As Single, Y As Single)
    If Button = vbRightButton Then
    PopMenu.Visible = True
    PopupMenu PopMenu
    End If
    End Sub
    ---- 上述方法是針對(duì)窗體的,我們也可以針對(duì)任意控件,用鼠標(biāo)右鍵點(diǎn)擊控件時(shí),也彈出一個(gè)快捷選單。方法也很簡(jiǎn)單,只要把上述代碼放到相應(yīng)控件的MouseDown事件中,就可以了。
    ---- 三.怎樣動(dòng)態(tài)地在窗體上判斷某區(qū)域內(nèi)是否有控件存在?

    ---- 在筆者的一個(gè)小程序中,想在窗體的某個(gè)區(qū)域輸出數(shù)據(jù),這就要求在這個(gè)區(qū)域內(nèi)不能有其他控件存在,那么,怎么才能知道在窗體的某個(gè)區(qū)域內(nèi),是否有控件存在呢?

    ---- 為了判斷在窗體的某個(gè)區(qū)域中,是否含有控件,我們可以利用以下VB程序來(lái)實(shí)現(xiàn):

    Function GetControl(x1 As Single, y1 As Single,
    x2 as Single, y2 as Single) As Control
    Dim Control as Control
    For Each Control In Form1
    With Control
    If (x1 〈= .Left) And (x2 〉= .Left) And _
    (y1 〈= .Top) And (y2 〉= .Top) Or _
    (x1 〈=.Left + Width) And (x2 〉= .Left + Width) And _
    (y1 〈= .Top) And (y2 〉= .Top) Or _
    (x1 〈= .Left) And (x2 〉= Left) And _
    (y1 〈= .Top + Height) And (y2 〉= .Top + Height) Or _
    (x1 〈= . Left + Width) And (x2 〉= .Left + Width) And _
    (y1 〈= .Top + Height) And (y2 〉= .Top + Height) Then
    Set GetControl = Control
    Exit Function
    End If End With
    Next
    Set GetControl = Nothing
    End Function
    ---- 注:(x1, y1)和(x2, y2)分別為選定矩形區(qū)域的左上角和右下角點(diǎn)的坐標(biāo)值。
    ---- 該程序通過(guò)計(jì)算窗體上所有控件的四個(gè)角的位置來(lái)判斷控件是否與選定區(qū)域相交,并返回相交的控件。

    ---- 四.獲取和修改計(jì)算機(jī)名字的方法

    ---- 在Win 95/98/2000中,計(jì)算機(jī)有一個(gè)名字。運(yùn)行regedit,在"HKEY-LOCAL-MACHINE\System\CurrentControlSetcontrol\ComputerName\ComputerName"中將發(fā)現(xiàn)"ComputerName"="Default"( 或其它字符串),在regedit下可以查看和修改這個(gè)名字。我們還可在程序中通過(guò)Win32API提供的GetComputerName、SetComputerName這兩個(gè)函數(shù)來(lái)查看和修改計(jì)算機(jī)的名字。下面以VB為例來(lái)探討如何編寫(xiě)一個(gè)可查看和修改計(jì)算機(jī)名字的程序。

    ---- 1.插入一個(gè)新模塊,在其中添加如下代碼:

    ′聲明 GetComputerName
    Declare Function GetComputerName Lib″kernel 32″Alias″
    GetComputerNameA″(Byval lpBuffer As
    String,nSize As Long)As Long
    ′聲明 SetComputerName
    Declare Function SetComputerName Lib″kernel 32″Alias ″
    SetComputerNameA″(Byval lp ComputerName As String)As Long
    ′定義一個(gè)獲取計(jì)算機(jī)名字的函數(shù)
    Public Function GetCName (CName) As Boolean
    Dim sComputerName As String '計(jì)算機(jī)的名字
    Dim lComputerName As Long
    '計(jì)算機(jī)名字的長(zhǎng)度
    Dim lResult As Long
    'GetComputerName的返回值
    Dim RV As Boolean
    ′GetCName返回值,若為T(mén)RUE則表示操作成功
    lComputerNameLen=256
    sComputerName=Space (lComputerNameLen)
    lResult=GetComputerName (sComputerName,lCompputerNameLen)
    If lResult 〈〉0 Then Cname=Left$ (sComputerName,lComputerNameLen)
    RV=True
    Else RV=False
    End If
    GetCName=RV
    End Function
    ′定義一個(gè)修改計(jì)算機(jī)名字的函數(shù)
    Public Function SetCName (CName ) As Boolean
    Dim lResult As Long
    Dim RV As Boolean
    lResult=SetComputerName (CName)
    If lResult 〈〉0 Then
    RV=True′修改成功
    Else RV=False
    End If
    SetCName=RV
    End Function

    ---- 2.在窗體中添加一命令按鈕Command1,雙擊該按鈕并在其中添加如下代碼:
    Sub Command1-Click ()
    DIM CN AS String
    x=GetCName (CN)
    Print ″This Computer Name is :″,CN
    CN=″MYCOMPUTER″
    x=SetCName (CN )
    Print ″Now the Computer name is :″,CN
    End Sub

    ---- OK, 保存上述設(shè)置和代碼,然后按F5運(yùn)行該程序。
    ---- 五.給VB控件PictureBox加滾動(dòng)條的方法

    ---- 用過(guò)PictureBox控件的朋友都知道,在其中我們可以加載圖片。當(dāng)圖片不是很大時(shí),可能還不會(huì)有什么問(wèn)題,但是,如果所加載的圖片比PictureBox大時(shí),我們只能看到圖片的一部分,那么,怎么才能看到其他的部分呢?為了解決上述問(wèn)題,我們可以在圖片框(PictureBox)內(nèi)部加上水平和垂直滾動(dòng)條,利用滾動(dòng)條來(lái)顯示看不到的圖片。具體方法如下:

    ----首先給工程(Project)添加一個(gè)OCX控件,單擊選單上的工程(Project)選單項(xiàng),在彈出的下拉選單中點(diǎn)擊組件(Components),選中其中的"Microsoft Common Dialog Control 5.0",確定完成加載工作;然后畫(huà)一個(gè)PictureBox,采用VB提供的默認(rèn)名字Picture1, 再在Picture1上面畫(huà)一個(gè)PictureBox,默認(rèn)名字為Picture2,注意別忘了設(shè)置:Picture2.AutoSize=TRUE;接著,加上水平和垂直滾動(dòng)條,默認(rèn)名字分別為:HScroll1,VScroll1;以后加載圖形到Picture2上,就可以了;最后,在窗體中引入其它控件:一個(gè)按鈕(Command),默認(rèn)名為Command1和一個(gè)"Microsoft Common Dialog Control",默認(rèn)名為CommonDialog1。具體VB代碼如下:

    Private Sub Form-Load()
    Picture2.Left = 0
    Picture2.Top = 0
    Picture2.Width = Picture1.Width
    Picture2.Height = Picture1.Height
    VScroll1.Min = 0
    HScroll1.Min = 0
    HScroll1.Min = 0
    VScroll1.Max = Picture2.Height - Picture1.Height
    HScroll1.Max = Picture2.Width - Picture1.Width
    If HScroll1.Max 〈 0 Then HScroll1.Enabled = False
    If VScroll1.Max 〈 0 Then VScroll1.Enabled = False
    End Sub
    Private Sub Command-Click()
    On Error GoTo ErrExit
    CommonDialog1.Filter =
    "Bitmap file(*.bmp)|*.bmp|All File(*.*)|*.*"
    CommonDialog1.FilterIndex = 1
    CommonDialog1.ShowOpen
    Picture2.Picture = LoadPicture(CommonDialog1.filename)
    VScroll1.Min = 0
    HScroll1.Min = 0
    VScroll1.Max = Picture2.Height - Picture1.Height
    HScroll1.Max = Picture2.Width - Picture1.Width
    If HScroll1.Max 〈 0 Then HScroll1.Enabled = False
    If VScroll1.Max 〈 0 Then VScroll1.Enabled = False
    ErrExit:
    End Sub
    Private Sub HScroll1-Change()
    Picture2.Left = -HScroll1.Value
    End Sub
    Private Sub VScroll1-Change()
    Picture2.Top = -VScroll1.Value
    End Sub
    ---- 該程序通過(guò)點(diǎn)擊Command1按鈕,在彈出的對(duì)話框中選擇一個(gè)圖形文件加載到Picture2中,利用水平和垂直滾動(dòng)條就可以實(shí)現(xiàn)圖片的滾動(dòng)。
    ---- 六.用VB做聊天程序的方法

    ---- 所謂"聊天"是指兩個(gè)程序能夠發(fā)送數(shù)據(jù)給對(duì)方。這個(gè)程序涉及到數(shù)據(jù)通訊的知識(shí),仿佛很復(fù)雜,不過(guò),由于VB給我們提供了一個(gè)Winsock控件,問(wèn)題就變得很簡(jiǎn)單了。

    ---- 先編寫(xiě)"聊天(主機(jī))"程序。在窗體里添加Winsock控件,并設(shè)置其Protocol屬性為1-SckUDPProtocol,其他屬性為缺省值。接著添加兩個(gè)標(biāo)簽和兩個(gè)文本框,設(shè)置兩個(gè)標(biāo)簽的標(biāo)題屬性分別為"接收窗"和"發(fā)送窗";兩個(gè)文本框的標(biāo)題屬性為空。最后編寫(xiě)代碼:

    ---- 1."聊天(主機(jī))"

    Private Sub Form-Load()
    ′設(shè)置網(wǎng)絡(luò)地址
    Winsock1.LocalPort=1024
    Winsock1.RemoteHost="202.96.6.1"
    Winsock1.RemotePort=1999
    End Sub
    Private Sub Text1-Change()
    ′發(fā)送用戶輸入的內(nèi)容
    Winsock1.SendData Text1.Text
    End Sub
    Private Sub Winsock1-DataArrival
    (Byval bytesTotal As Long)
    Dim rec As String
    ′接收對(duì)方數(shù)據(jù)并在文本框內(nèi)顯示
    Winsock1.GetData rec, vb String
    Text2.Text=rec
    End Sub

    ---- 2."聊天(副機(jī))"

    Private Sub Form_Load()
    ′設(shè)置網(wǎng)絡(luò)地址
    Winsock1.LocalPort=1999
    Winsock1.RemoteHost="202.96.6.1"
    Winsock1.RemotePort=1024

    ---- 其他部分程序與(主機(jī))相同。最后將兩個(gè)程序存盤(pán),并編譯成執(zhí)行(.Exe)文件,F(xiàn)在就可以使用這個(gè)程序進(jìn)行對(duì)話了。
    ---- 七.文本框中文本的某一特定字符或字符串同時(shí)高亮顯示的方法

    ---- 由于普通TextBox控件不支持不連續(xù)字符串的同時(shí)高亮顯示,所以我們選擇RichTextBox控件。單擊工程(Project)選單項(xiàng),在彈出的下拉選單中單擊組件(Components)選單項(xiàng),從彈出的對(duì)話框中選擇Microsoft Rich Textbox Control 5.0復(fù)選框,確定加載RichTextBox控件。

    ---- 新建(New)一個(gè)工程,在窗體(Form)上添加一個(gè)RichTextBox控件和兩個(gè)Command(按鈕)控件,都采用系統(tǒng)默認(rèn)的Name屬性值;設(shè)置RichTextBox的Text屬性值為空,Command1和Command2的Caption屬性值分別設(shè)為"輸入文本"和"選擇字符串"。最后,添加如下VB代碼:

    Private Sub Command1-Click()
    Dim str As String
    Dim Text As String
    str=″輸入文本″
    Text=InputBox(str)
    RichTextBox1.Text=Text
    End Sub
    Private Sub Command2-Click()
    Dim str As String
    Dim Text As String
    Dim Position As Integer
    Dim Lenth As Integer
    str=″輸入要高亮顯示的字符串″
    Text=InputBox(str)
    If Text 〈〉 ″″ Then
    Position=InStr(RichTextBox1.Text, Text)-1
    Lenth=Len(Text)
    RichTextBox1.SelStart=Position
    RichTextBox1.SelLength=Lenth
    RichTextBox1.SelColor=RGB(255,0,0)
    Do While InStr(Position+Lenth+
    1, RichTextBox1.Text, Text) 〈〉 0
    Position=InStr(Position+Lenth+
    1, RichTextBox1.Text, Text)-1
    RichTextBox1.SelStart=Position
    RichTextBox1.SelLength=Lenth
    RichTextBox1.SelColor=RGB(255,0,0)
    Loop
    End If
    End Sub
     
    ---- 按F5執(zhí)行程序,單擊"輸入文本"按鈕,在彈出的對(duì)話框中輸入一些文本,確定后,剛剛輸入的文本將顯示在RichTextBox中;再單擊"選擇字符串"按鈕,在彈出的對(duì)話框中輸入你希望高亮顯示的字符串,確定后,RichTextBox中相應(yīng)的字符串將以紅色高亮顯示。
    ---- 八.編程實(shí)現(xiàn)Windows 95/98操作系統(tǒng)熱啟動(dòng)的方法

    ---- 要利用程序?qū)崿F(xiàn)系統(tǒng)的重新啟動(dòng),可以在你的程序中調(diào)用API函數(shù)來(lái)實(shí)現(xiàn)。建一個(gè)子函數(shù):(以VB為例)

    Declare Function SystemParametersInfo Lib ″
    user32″ Alias -
    ″SystemParametersInfo″ (ByVal uAction As Long,
    ByVal uParam As Long,
    ByVal lpvParam As Any, ByVal
    fuWinIni As Long) As Long
    Sub DisableCtrlAltDelete(bDisabled As Boolean)
    Dim X As Long
    X=SystemParametersInfo(97, bDisabled, CStr(1), 0)
    End Sub
    Call DisableCtrlAltDelete(true) ′禁止熱啟
    Call DisableCtrlAltDelete(false) ′允許熱啟

    ---- 九.在Windows 95/ 98啟動(dòng)后自動(dòng)啟動(dòng)程序的方法
    ---- 我們都知道在Windows 95/98的"開(kāi)始"→"程序"選單下有一"啟動(dòng)"選單項(xiàng),當(dāng)每次啟動(dòng)Windows 95或Windows 98時(shí),系統(tǒng)都會(huì)自動(dòng)啟動(dòng)放在"啟動(dòng)"選單欄里的可執(zhí)行程序。

    ---- 但目前有好多軟件,像解霸五、ICQ,以及大部分實(shí)時(shí)偵測(cè)病毒的軟件等等,安裝后,并沒(méi)有放在"啟動(dòng)"選單里,也能在啟動(dòng)操作系統(tǒng)時(shí)自動(dòng)啟動(dòng)。怎么實(shí)現(xiàn)的呢?

    ---- 其實(shí)只要知道Windows注冊(cè)表的一些知識(shí),這個(gè)問(wèn)題就不能稱之為問(wèn)題了。用鼠標(biāo)單擊"開(kāi)始",打開(kāi)開(kāi)始選單,再單擊"運(yùn)行",出現(xiàn)一對(duì)話框,然后輸入"regedit",確定后,會(huì)打開(kāi)系統(tǒng)注冊(cè)表編輯器,找到HKEY-LOCAL-MACHINE? SOFTWARE?Microsoft?Windows?CurrentVersion?Run,加入你的程序的入口,就可以了。如果不知道怎么加,就參考一下已經(jīng)存在的鍵值。

    ---- 十. 如何把數(shù)據(jù)文件輸出到Text控件中?如果數(shù)據(jù)量比較大,窗體滿屏也不夠大,怎么解決?

    ---- 有一個(gè)比較簡(jiǎn)單的方法,就是把數(shù)據(jù)放到一個(gè)文本框(Text)里,并在其中加上水平和垂直滾動(dòng)條。具體實(shí)現(xiàn)步驟為:先在窗體(Form)里加入一個(gè)文本框,采用默認(rèn)名Text1;然后,設(shè)置文本框Text1的屬性:Text屬性設(shè)置為空,MultiLine屬性設(shè)置為T(mén)rue,ScrollBars屬性設(shè)置為3-Both;接著添加如下VB代碼:

    Private Sub Form-Load()
    Dim Handle As Integer
    Dim FileName As String
    On Error GoTo ErrExit
    begin:
    ′輸入要顯示的數(shù)據(jù)文件的名稱
    FileName=InputBox$(″Input Filename″,
    ″Open File″)
    On Error GoTo FileErr
    Handle=FreeFile
    Open FileName For Input As #Handle
    ′把數(shù)據(jù)文件中的數(shù)據(jù)輸出到文本框中
    Text1.Text=Input$(LOF(Handle), Handle)
    Close #Handle
    Exit Sub
    FileErr:
    Dim ErrNum As Integer
    If Err.Number=53 Then
    ErrNum=MsgBox(″File not exist″,
    vbOKCancel, ″Error Information″)
    If ErrNum=1 Then
    GoTo begin
    Else
    Exit Sub
    End If
    End If
    MsgBox Err.Description, , ″file open failed″
    ErrExit:
    Exit Sub
    End Sub
    ′使文本框充滿整個(gè)窗體
    Private Sub Form-Resize()
    Text1.Left=0
    Text1.Top=0
    Text1.Width=Form1.Width-100
    Text1.Height=Form1.Height-400
    End Sub
    ---- 通過(guò)這樣的處理,不僅能解決問(wèn)題,而且用戶還可以在文本框中對(duì)數(shù)據(jù)進(jìn)行編輯。
    ---- 十一.關(guān)聯(lián)文件列表框、目錄列表框和驅(qū)動(dòng)器列表框的方法

    ---- 想做一個(gè)對(duì)話窗體,包含驅(qū)動(dòng)器列表框、目錄列表框和文件列表框,并能實(shí)現(xiàn)三者的同步操作,怎么做?這都是我們?cè)趯?shí)際應(yīng)用中經(jīng)常會(huì)遇到的問(wèn)題,在VB中解決這個(gè)問(wèn)題非常簡(jiǎn)單,可以通過(guò)Path屬性的改變引發(fā)Change事件來(lái)實(shí)現(xiàn)。例如:

    Sub Dir1-Change()
    File1.Path=Dir1.Path
    End Sub

    ---- 該事件過(guò)程使窗體上的目錄列表框Dir1和文件列表框File1產(chǎn)生同步。因?yàn)槟夸浟斜砜騊ath屬性的改變將產(chǎn)生Change事件,所以在Dir1-Change事件過(guò)程中,把Dir1.Path賦給File1.Path,就可以產(chǎn)生同步效果。類(lèi)似地,增加下面的事件過(guò)程,就可以使三種列表框同步操作:
    Sub Drive1-Change()
    Dir1.Path=Drive1.Drive
    End Sub

    ---- 該過(guò)程使驅(qū)動(dòng)器列表框和目錄列表框同步,前面的過(guò)程使目錄列表框和文件列表框同步,從而使三種列表框同步,問(wèn)題即可解決。


    支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    VB編程的必備技巧








    簽名
    主站蜘蛛池模板: 久久精品国产成人AV| 国产乱人伦偷精精品视频| 久久96国产精品| 黄色a级片在线观看| 日韩欧美亚洲天堂| 免费无遮挡毛片| 被cao的合不拢腿的皇后| 国产精品视频一区二区三区无码 | 中文字幕无线码免费人妻| 曰批免费视频试看天天视频下| 免费一区二区三区四区五区| 色偷偷av一区二区三区| 国产精品久久久久影院嫩草| 一二三四社区在线中文视频| 插鸡网站在线播放免费观看| 亚洲а∨天堂久久精品| 精品国产三级在线观看| 国内午夜免费鲁丝片| 中文字幕热久久久久久久| 日韩在线一区二区三区免费视频| 亚洲理论电影在线观看| 男男全肉高h视频在线观看| 国产亚洲视频在线观看| 一区二区三区高清在线| 最近中文字幕版2019| 免费a级毛片18以上观看精品 | 收集最新中文国产中文字幕| 亚洲人jizz| 穿透明白衬衫喷奶水在线播放| 国产精品综合一区二区三区| 一级特黄aaa大片在线观看| 无码一区二区三区亚洲人妻| 亚洲一区二区三区影院| 欧美成人乱妇在线播放| 国产乱理伦片在线观看| 18禁止午夜福利体验区| 成人人观看的免费毛片 | 99热在线观看| 无码国内精品人妻少妇蜜桃视频| 亚洲综合第一区| 男人和女人做爽爽视频|