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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chap09.htm

?? 創世紀的c++ builder教程 創世紀的c++ builder教程
?? HTM
?? 第 1 頁 / 共 4 頁
字號:
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"><META NAME="Generator" CONTENT="Microsoft Word 97"><TITLE> </TITLE><META NAME="Template" CONTENT="C:\MSOffice\Template\jjhou.dot"></HEAD><BODY><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>第</FONT><FONT SIZE=2>XX</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>章</FONT><FONT SIZE=2> </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>具體而微的繪圖程式</P><P> </P><P>在本章中我將為你示范如何在</FONT><FONT SIZE=2>C++Builder</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>中撰寫一個完整的繪圖程式。藉由這個程式的撰寫,你會更加了解</FONT><FONT SIZE=2>C++Builder</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>的</FONT><FONT SIZE=2> Canvas </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>繪圖精神,而在撰寫這個程式的同時,我們也可將相關的技術做一個整體的檢閱。此繪圖程式的執行結果如下:</P><P> </P><P><IMG SRC="Image7.gif" WIDTH=492 HEIGHT=387></P><P> </P><P> </P><P>在此程式中我會以循序漸進的方式一步一步地帶領你完成整個程式,基本上這個程式和</FONT><FONT SIZE=2>C++Builder</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>內附的范例程式有幾分類似,但我必須要說明的是:在</FONT><FONT SIZE=2> C++Builder</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>中所附的范例程式是直接由原先在</FONT><FONT SIZE=2>Delphi</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>內以</FONT><FONT SIZE=2> Object Pascal </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>所撰寫的范例程式修改而成,所以有部份程式的寫法大為違背</FONT><FONT SIZE=2>C++ </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>式物件導向精神,在邁入</FONT><FONT SIZE=2>C++Builder </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>的新世紀之後,我們當然希望寫出的程式是『系出名門,血統純正』的</FONT><FONT SIZE=2>C++ </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>式的物件導向程式。而這就是我在本章中希望帶領你完成的程式。</P><P> </P></FONT><FONT SIZE=2><P>XX-01 </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>關於滑鼠事件(</FONT><FONT SIZE=2>Mouse Event</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>)</P><P> </P><P>撰寫繪圖程式,首先要了解滑鼠事件,在</FONT><FONT SIZE=2>Windows</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>中定義了許多的滑鼠訊息(</FONT><FONT SIZE=2>Message</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>),而這些滑鼠訊息在</FONT><FONT SIZE=2>BCB</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>中就成為滑鼠事件了,為了要處理滑鼠事件,我們必須要選寫滑鼠事件處理程式:</P><P> </P></FONT><FONT FACE="華康細圓體,???" LANG="ZH-TW" SIZE=1><P>在</FONT><FONT SIZE=1>Windows</FONT><FONT FACE="華康細圓體,???" LANG="ZH-TW" SIZE=1>中定義的滑鼠訊息列表</P></FONT><FONT SIZE=1><P>WM_CAPTURECHANGED</P><P>WM_LBUTTONDBLCLK</P><P>WM_LBUTTONDOWN</P><P>WM_LBUTTONUP</P><P>WM_MBUTTONDBLCLK</P><P>WM_MBUTTONDOWN</P><P>WM_MBUTTONUP</P><P>WM_MOUSEACTIVATE</P><P>WM_MOUSEMOVE</P><P>WM_NCHITTEST</P><P>WM_NCLBUTTONDBLCLK</P><P>WM_NCLBUTTONDOWN</P><P>WM_NCLBUTTONUP</P><P>WM_NCMBUTTONDBLCLK</P><P>WM_NCMBUTTONDOWN</P><P>WM_NCMBUTTONUP</P><P>WM_NCMOUSEMOVE</P><P>WM_NCRBUTTONDBLCLK</P><P>WM_NCRBUTTONDOWN</P><P>WM_NCRBUTTONUP</P><P>WM_RBUTTONDBLCLK</P><P>WM_RBUTTONDOWN</P><P>WM_RBUTTONUP</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>表</FONT><FONT SIZE=2>XX-01 Windows</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>內滑鼠相關</FONT><FONT SIZE=2> Message</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>。</P><P> </P><P>雖然在</FONT><FONT SIZE=2>Windows</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>作業系統中定義了非常多的訊息,但是在</FONT><FONT SIZE=2>C++Builder </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>中已經把龐大的訊息系統作適度的簡化了,并且不再以訊息的方式存在,而改以事件</FONT><FONT SIZE=2> (Event</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>)的處理方式,在本章的繪圖程式中,我們只要處理以下的幾個事件即可:</P><P> </P></FONT><FONT SIZE=2><P>OnMouseDown  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠鍵按下事件</P></FONT><FONT SIZE=2><P>OnMouseMove  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠移動事件</FONT><FONT SIZE=2> </P><P>OnMouseUp    </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠鍵放開事件</P></FONT><FONT SIZE=2><P>OnClick        </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>任何滑鼠的點取</P><P> </P><P>在此,你可以很明顯地發現,在</FONT><FONT SIZE=2>C++Builder</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>的事件中并未將左右滑鼠鍵分別定義,而是以合并處理的方式,因此在收到以上滑鼠事件時,若你要分辨左右滑鼠事件時,必須在事件處理程式中判斷左右鍵。</P><P> </P><P>具備了基本的滑鼠事件認知後,我們開始進行後續的程式探索吧!</P><P> </P><P>為了讓你實際了解程式的細節,我希望將程式撰寫的步驟細節交代楚,在往下進行之前,我們先建立一個新的專案檔,并將其命名為</FONT><FONT SIZE=2> DrawMain</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>,同時將</FONT><FONT SIZE=2>Form</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>的</FONT><FONT SIZE=2>Color</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>性質設為黑色(</FONT><FONT SIZE=2>clBlack</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>),以便直接在上面畫圖。</P><P> </P></FONT><FONT SIZE=2><P>XX-02</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠事件的處理</P><P> </P><P>當</FONT><FONT SIZE=2>C++ Builder</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>應用程式偵測到物件滑鼠事件時,它會檢查你是否定義該物件相對應的滑鼠事件處理程式,然後呼叫該函數,將相關參數傳給它。以</FONT><FONT SIZE=2>OnMouseDown</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件為例,它的事件處理程式模版如下:</P></FONT><FONT SIZE=2><P>void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,</P><P>&#9;TShiftState Shift, int X, int Y)</P><P>{</P><P>}</P><P> </P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>它總共接收了以下幾個參數:</P></FONT><FONT SIZE=2><P>Sender  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>引發該事件的軟體元件。</P></FONT><FONT SIZE=2><P>Button  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>表示滑鼠的按鍵。它的值可為</FONT><FONT SIZE=2>mbLeft</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>(左鍵),</FONT><FONT SIZE=2>mbRight</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>(右鍵),</FONT><FONT SIZE=2>mbMiddle</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>(中間鍵)。</P></FONT><FONT SIZE=2><P>Shift    </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>用以表示事件發生的同時</FONT><FONT SIZE=2>Alt</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>,</FONT><FONT SIZE=2>Shift</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>及</FONT><FONT SIZE=2>Ctrl</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>叁鍵的狀態。</P></FONT><FONT SIZE=2><P>X,Y    </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>用以表示事件發生時之座標位置。</P><P> </P><P>在大多數的情況下,滑鼠事件的(</FONT><FONT SIZE=2>X,Y</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>)座標值是我們最為感興趣的項目,不過,有時候我們也需要靠</FONT><FONT SIZE=2>Button</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>鍵來判斷滑鼠的按鍵,或是需要利用</FONT><FONT SIZE=2>Shift</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>來取得特殊鍵的狀態,而做一些額外的程式處理。</P><P> </P></FONT><FONT SIZE=2><P>XX-02-01 OnMouseDown</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件的處理</P><P> </P><P>首先我們先以一個最基本的畫線程式來說明</FONT><FONT SIZE=2>OnMouseDown</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件的處理,當使用者按下滑鼠時,我們希望將筆移至事件發生時的坐標,因此我們可將程式寫成如下:</P><P> </P></FONT><FONT SIZE=2><P>void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,</P><P>&#9;TShiftState Shift, int X, int Y)</P><P>{</P><P>&#9;Canvas-&gt;MoveTo(X,Y);</P><P>}</P><P>XX-02-03 OnMouseUp</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件的處理</P><P> </P><P>同樣地,我們可以再為這個</FONT><FONT SIZE=2>Form</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>加上</FONT><FONT SIZE=2>OnMouseUp</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>的事件處理函式,在收到</FONT><FONT SIZE=2>OnMouseUp</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件時,由滑鼠點下的坐標,畫一條直線至現在的坐標。</P><P> </P></FONT><FONT SIZE=2><P>void __fastcall TForm1::FormMouseUp(TObject *Sender, TMouseButton Button,</P><P>&#9;TShiftState Shift, int X, int Y)</P><P>{</P><P>&#9;Canvas-&gt;LineTo(X,Y);</P><P>}</P><P> </P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>在寫完了以上兩個事件處理函式之後,我們就可以在</FONT><FONT SIZE=2>Form</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>上面作畫了,你可以用滑鼠在</FONT><FONT SIZE=2>Form</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>上面拖戈出一條條直線。其執行結果大致如圖</FONT><FONT SIZE=2>XX-01</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>:</P><P> </P><P><IMG SRC="Image8.gif" WIDTH=348 HEIGHT=240></P><P>圖</FONT><FONT SIZE=2>XX-01</P><P>XX-02-02 OnMouseMove</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件的處理</P><P> </P><P>在加上了</FONT><FONT SIZE=2>OnMouseDown</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>及</FONT><FONT SIZE=2>OnMouseUp</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>處理函式之後,我們只能畫出一條條直線,若是我們想要以滑鼠畫出不規則線段時,就必須再處理</FONT><FONT SIZE=2>OnMouseMove</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件,利用</FONT><FONT SIZE=2>OnMouseMove</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件,我們可以追縱到滑鼠移動的位置,簡單的</FONT><FONT SIZE=2>OnMouseMove</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件處理函式如下:</P><P> </P></FONT><FONT SIZE=2><P>void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X,</P><P>&#9;int Y)</P><P>{</P><P>&#9;Canvas-&gt;LineTo(X,Y);</P><P>}</P><P> </P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>此程式的意義即在於將滑鼠所經過的每個點,以線條連接起來,在加上</FONT><FONT SIZE=2>OnMouseMove </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>事件處理函式之後,它的執行結果會變成圖</FONT><FONT SIZE=2>XX-02</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>:</P><P><IMG SRC="Image9.gif" WIDTH=348 HEIGHT=240></P><P>圖</FONT><FONT SIZE=2>XX-02</P><P>XX-02-03&#9;</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠的處理的加強</P><P> </P><P>前面的程式對於滑鼠的移動處理有部份考慮的不夠周詳,因為它在滑鼠移動時不分青紅皂白就將線畫在螢慕上,造成螢幕上的線條混亂,這并不是正規的處理方法,正確的處理方法應該如下:</P><P> </P></FONT><FONT SIZE=2><P>(1) </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠鍵按下時,將記錄滑鼠按下的旗標設為</FONT><FONT SIZE=2>True.</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>同時將該點記錄下來,謂之原點。</P><OL START=2><LI>滑鼠移動時,判斷滑鼠按下的旗標是否設為</FONT><FONT SIZE=2> True</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>,若為</FONT><FONT SIZE=2> True</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>,則移動至原點,并畫一條由原點至目前所在點的線。同時更新原點位置至目前所在之點。</LI><LI VALUE=3>滑鼠放開時,將記錄滑鼠按下的旗標設為</FONT><FONT SIZE=2>False</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>。</LI></OL><P> </P><P>以下就是關於叁個滑鼠事件的處理程式碼。</P><P> </P></FONT><FONT SIZE=2><P>//  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠按下的事件處理函式</P></FONT><FONT SIZE=2><P>//  1. </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>將旗標設為</FONT><FONT SIZE=2>True</P><P>//  2. </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>記錄原點位置</P></FONT><FONT SIZE=2><P>void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>&#9;</FONT><FONT SIZE=2>TShiftState Shift, int X, int Y)</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>{</P></FONT><FONT SIZE=2><P>    m_bDraw = TRUE;</P><P>    m_nOrgX=X;</P><P>    m_nOrgY=Y;</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>}</P><P> </P></FONT><FONT SIZE=2><P>//  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠移動的事件處理函式</P></FONT><FONT SIZE=2><P>//  1. </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>判斷旗標是否為</FONT><FONT SIZE=2>True</FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>。若是則進行以下動作。</P></FONT><FONT SIZE=2><P>//  2. </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>移動至原點。</P></FONT><FONT SIZE=2><P>//  3. </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>畫一條由原點至目前所在點的線條。</P></FONT><FONT SIZE=2><P>//  4. </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>更改原點位置。</P><P> </P></FONT><FONT SIZE=2><P>void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>&#9;</FONT><FONT SIZE=2>int X, int Y)</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>{</P><P>&#9;</FONT><FONT SIZE=2>if (m_bDraw)</P><P>    {</P><P>    &#9;Canvas-&gt;MoveTo(m_nOrgX,m_nOrgY);</P><P>        Canvas-&gt;LineTo(X,Y);</P><P>        m_nOrgX = X;</P><P>        m_nOrgY = Y;</P></FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2><P>&#9;}</P><P>}</P><P> </P></FONT><FONT SIZE=2><P>//  </FONT><FONT FACE="新細明體" LANG="ZH-TW" SIZE=2>滑鼠放開的事件處理函式</P>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区在线观看国产| 色偷偷久久一区二区三区| 不卡的电视剧免费网站有什么| 欧美日韩aaa| 亚洲精品伦理在线| 国产黄色成人av| 欧美一区二区三区视频在线观看| 国产精品美日韩| 激情深爱一区二区| 91精品在线观看入口| 亚洲免费色视频| 成人免费毛片aaaaa**| 日韩免费视频一区| 日韩精品色哟哟| 欧美在线视频日韩| 亚洲一区中文在线| 成人av网站在线观看免费| 日韩欧美一区在线观看| 日韩精品免费专区| 欧美日韩高清一区二区不卡| 亚洲女同ⅹxx女同tv| av在线不卡网| 亚洲免费三区一区二区| 91视频一区二区| 亚洲特黄一级片| 99精品久久99久久久久| 欧美国产视频在线| 福利电影一区二区三区| 国产偷v国产偷v亚洲高清| 久久精品国内一区二区三区| 91精品在线一区二区| 日韩在线a电影| 91精品国产免费| 久久精品二区亚洲w码| 日韩一区二区三区四区| 看电视剧不卡顿的网站| 欧美v亚洲v综合ⅴ国产v| 精品一区二区精品| 久久你懂得1024| 成人性视频网站| 最好看的中文字幕久久| 色综合色狠狠综合色| 亚洲一区二区三区自拍| 88在线观看91蜜桃国自产| 日韩在线一二三区| 久久久精品国产免大香伊| 成人一级片网址| 亚洲综合色丁香婷婷六月图片| 在线视频你懂得一区| 日韩av网站免费在线| 精品久久久久久久人人人人传媒 | 国产精品欧美久久久久一区二区| 国产福利91精品一区二区三区| 欧美精彩视频一区二区三区| 一本大道久久a久久综合| 午夜欧美在线一二页| 日韩精品一区二区三区老鸭窝| 国产精品888| 亚洲同性同志一二三专区| 91精品国产色综合久久不卡蜜臀| 精品亚洲免费视频| 亚洲精品乱码久久久久久| 日韩片之四级片| 99免费精品视频| 午夜精品福利在线| 欧美激情一区二区三区不卡| 欧美午夜精品久久久久久超碰| 久久精品99久久久| 亚洲色欲色欲www在线观看| 欧美丰满少妇xxxbbb| 国产成人免费视频网站| 一区二区三区日韩| 国产亚洲一区字幕| 欧美巨大另类极品videosbest| 国产成人精品免费| 天堂在线一区二区| 中文字幕一区二区不卡| 日韩一区二区在线看片| 972aa.com艺术欧美| 国产专区欧美精品| 亚洲成a人在线观看| 国产精品久久久久久久午夜片| 欧美三级电影在线观看| www.欧美日韩国产在线| 狠狠色狠狠色综合系列| 亚洲午夜成aⅴ人片| 国产精品毛片久久久久久| 欧美一区二区三区视频在线 | 最新国产の精品合集bt伙计| 欧美r级在线观看| 欧美日韩色综合| 日本福利一区二区| 成人精品视频网站| 国内国产精品久久| 青青草成人在线观看| 亚洲高清久久久| 亚洲人123区| 中文字幕一区免费在线观看| 国产欧美日韩卡一| 久久精品一级爱片| 久久久综合视频| 精品日韩欧美在线| 欧美v日韩v国产v| 欧美一级高清大全免费观看| 欧美久久久久久蜜桃| 日本道精品一区二区三区| 972aa.com艺术欧美| jlzzjlzz亚洲女人18| 懂色av噜噜一区二区三区av| 精品一区二区三区香蕉蜜桃| 久久精品国产久精国产| 激情文学综合丁香| 国产精品一区三区| 成人精品小蝌蚪| av一区二区不卡| 91一区二区在线观看| 色综合久久99| 欧美三级日本三级少妇99| 欧美日韩一区二区在线观看 | 日韩一区二区视频在线观看| 制服.丝袜.亚洲.另类.中文 | 麻豆国产91在线播放| 蜜臀91精品一区二区三区 | 亚洲一区二区三区精品在线| 亚洲国产sm捆绑调教视频| 天堂av在线一区| 精品影院一区二区久久久| 国产成人福利片| 日本久久一区二区| 欧美卡1卡2卡| 久久久久久久久久久99999| 久久精品欧美一区二区三区麻豆| 中文无字幕一区二区三区| 亚洲免费电影在线| 免费亚洲电影在线| 岛国一区二区三区| 欧美日韩精品三区| 国产欧美一区二区三区网站| 中文字幕一区二区不卡| 日欧美一区二区| 国产精品一品视频| 色狠狠一区二区| 日韩视频中午一区| 亚洲色图.com| 免费日本视频一区| 不卡大黄网站免费看| 91精品国产综合久久精品app| 国产肉丝袜一区二区| 午夜欧美大尺度福利影院在线看| 精品无人码麻豆乱码1区2区| 91美女在线观看| 日韩欧美一区在线观看| 中文字幕在线一区免费| 欧美96一区二区免费视频| 成人午夜电影网站| 91精品欧美一区二区三区综合在 | 成人激情图片网| 制服丝袜国产精品| 中文字幕一区日韩精品欧美| 日韩高清不卡一区二区三区| 99精品国产热久久91蜜凸| 精品少妇一区二区三区日产乱码| 国产精品久久一级| 久久电影网电视剧免费观看| 日本韩国欧美一区| 国产女人18毛片水真多成人如厕 | 亚洲精品老司机| 国产精品69毛片高清亚洲| 91麻豆精品国产综合久久久久久| 最新中文字幕一区二区三区| 久久精品99国产精品| 欧美日韩成人高清| 一区二区三区欧美日韩| 成人黄色免费短视频| 久久久精品国产99久久精品芒果| 日本不卡一区二区| 色8久久人人97超碰香蕉987| 国产精品久久久久久一区二区三区 | 久久国产精品99精品国产| 在线日韩一区二区| 国产精品美女www爽爽爽| 国产乱子轮精品视频| 日韩欧美一卡二卡| 视频在线观看一区| 7777精品伊人久久久大香线蕉| 一区二区在线看| 91丝袜高跟美女视频| 综合久久一区二区三区| 成人av一区二区三区| 国产日韩精品久久久| 国产精品系列在线观看| 国产午夜亚洲精品不卡| 国产主播一区二区| 久久九九99视频| 国产成人在线电影| 国产精品区一区二区三区| 国产成人av一区二区三区在线| 精品99久久久久久| 国产高清在线精品| 中文字幕一区二区三区在线不卡|