精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

利用C#實現任務欄通知窗口

開發 后端
想必大部分網友都使用過QQ、MSN等聊天程序,它們的界面都相當華麗,尤其是當網友上線以及消息提示時會有一個浮動的窗體從屏幕的右下方緩慢升起,既美觀又人性化。本文主要講解用C#來實現任務欄通知窗口。

作為程序員在享受的同時我們也不禁要問:這到底是怎么實現的呢?本文就利用Visual Studio .Net C# 2005以及.Net框架繪圖技術來實現這種任務欄通知窗口。

簡介

QQ和MSN的任務欄通知窗口很人性化,它可以在不丟失主窗體焦點的前提下顯示一個具備皮膚Skin的通知窗體,當它顯示一段時間后會自動消失,所以用戶根本不用干預它。

這樣的通知窗體和一般的具備標題欄、系統圖標和按鈕的窗體沒有太大的區別,窗體表面其實就是畫上去的一張位圖而已,而窗體的浮動則會復雜一點,我們會用到.Net框架

的雙重緩沖區繪圖技術(參見作者編譯文章“Windows窗體的.Net框架繪圖技術”)來保證移動窗體時所顯示的內容平滑且不閃爍,以及使用P/Invoke平臺調用進行對Win32API

函數的調用來完成不獲得焦點的窗體顯示和非標題欄窗體拖動。兩種位圖的皮膚運行時的界面如下:

背景知識

通知窗口就是將一般的窗體附加上一層皮膚,這里所謂的皮膚就是一張位圖圖片,該位圖圖片通過窗體的OnPaintbackground事件被繪制到窗體表面,在附加位圖之前需要調

整窗體的可視屬性,由于繪制操作是針對于窗體客戶區域的,所謂客戶區域就是指窗體標題欄下方以及窗體邊框以內的所有區域,所以需要將窗體的邊框和外觀屬性FormBorderStyle調整為:None,這樣所繪制的圖像就會填充整個窗體。

首先,我們會用到Region對象,Region對象可以精確的描繪出任意形狀的輪廓范圍,通過一個位圖圖像創建Region對象后再將其傳遞給窗體的Region屬性就可以使窗體按照Region所定義的輪廓顯示出來。作為皮膚使用的位圖文件可以通過任何圖像編輯軟件諸如:Photeshop來創建和編輯,只是注意一點,需要將圖片的背景色調成特定顏色以便程序繪制時將其清除,我們在這里使用的背景色為粉紅色。為了能夠讓Region對象按照圖像中感興趣的內容邊框來創建窗體,我們還需要使用GraphicsPath類將圖像輪廓按照一定路徑標注下來,稍后便按照該路徑創建Region對象。

然后通過窗體的繪圖事件將位圖的內容顯示在窗體表面,我們沒有直接使用OnPaintbackground事件而是重載了該方法,這樣做的好處就是一些低層的繪制操作還繼續交由.Net框架運行時來處理,我們只考慮實際需要的繪制操作即可。在OnPaintbackground方法中我們啟用了雙重緩沖區繪圖技術,所謂該技術就是指先在內存中的一塊畫布上把將要顯示的圖像顯示出來或進行處理,等到操作完成再將該畫布上所顯示的圖像放置到窗體表面,這樣的機制可以非常有效的降低閃爍的出現,使圖像顯示更加平滑。

通知窗體從屏幕的右下方進行升起停留一段時間后再慢慢回落,這里需要用到返回屏幕區域的大小范圍的.Net框架方法Screen.GetWorkingArea(WorkAreaRectangle),通過一定算法計算出通知窗體顯示前的初始位置。

最后,我們將要顯示的文本按照一定格式和Rectangle對象所指定的區域范圍繪制到窗體表面。通知窗體的關閉操作是通過設定一個區域,當用戶用鼠標單擊時檢測單擊坐標是否在該區域內,若在區域內就可以執行隱藏通知窗體的代碼。

我們注意了,當QQ和MSN的通知窗口顯示時其主窗體的焦點沒有丟失,也就是說程序沒有將自身的焦點轉移到顯示的通知窗體上。經過測試,我們無論怎么樣調用.Net框架提供的窗體顯示例程譬如:Form.Show都無法保證主窗體的焦點不丟失,在VC環境下我們可以使用Win32API的 ShowWindows函數來完成復雜的窗體顯示操作,但是.Net框架根本沒有提供類似的方法,那么我們能否通過.Net框架調用該API函數來顯示窗體呢?

幸好.Net框架提供了P/Invoke平臺調用,利用平臺調用這種服務,托管代碼就可以調用在動態鏈接庫中實現的非托管函數,并可以封送其參數,我們可以輕松的顯示但不獲得焦點的窗體。程序中用到的Windows API以及常量的定義都保存在WinUser.h頭文件中,其對應的動態鏈接庫文件就是user32.dll,使用.Net框架提供的 DllImportAttribute類對導入的函數進行定義,然后就可以非常方便的在程序中調用該函數了。

由于我們將通知窗體的標題欄隱藏了,所以對窗體拖動操作還需要我們自己動手進行處理。本文介紹了如何更加高效的進行拖動窗體操作,有些網友在對于非標題欄拖動窗體編程時偏向組合使用鼠標事件來進行,這樣做的本質沒有任何不妥,但是頻繁的事件響應和處理反而使程序性能有所降低。我們將繼續使用 Win32API的底層處理方法來解決該問題,就是向窗體發送標題欄被單擊的消息,模擬實際的拖動操作。

我們會通過2個計時器來完成窗體的顯示、停留和隱藏,通過設置速度變量可以改變窗口顯示和隱藏的速度。

  1. [DllImportAttribute("user32.dll")]   
  2. public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);   
  3. //發送消息//winuser.h 中有函數原型定義   
  4. [DllImportAttribute("user32.dll")]   
  5. public static extern bool ReleaseCapture(); //釋放鼠標捕捉winuser.h   
  6. [DllImportAttribute("user32.dll")] //winuser.h   
  7. private static extern Boolean ShowWindow(IntPtr hWnd, Int32 nCmdShow);  

SendMessage向消息循環發送標題欄被按下的消息來模擬窗體的拖動,ShowWindow用來將特定句柄的窗體顯示出來,注意第二個參數 nCmdShow,它表示窗體應該怎樣顯示出來,而我們需要窗體不獲得焦點顯示出來,SW_SHOWNOACTIVATE可以滿足我們要求,繼續在 WinUser.h文件中搜索找到該常量對應的值為4,于是我們就可以這樣調用來顯示窗體了:

  1. ShowWindow(this.Handle, 4);  

我們創建了一個自定義函數ShowForm用來封裝上面的ShowWindow用來是顯示窗體,同時傳遞了所用到的幾個Rectangle矩形區域對象,最后調用ShowWindows函數將窗體顯示出來,代碼片段如下:

  1. public void ShowForm(string ftitletext, string fcontenttext, Rectangle fRegionofFormTitle,   
  2. Rectangle fRegionofFormTitlebar, Rectangle fRegionofFormContent, Rectangle fRegionofCloseBtn)   
  3. {   
  4. titleText = ftitletext;   
  5. contentText = fcontenttext;   
  6. WorkAreaRectangle = Screen.GetWorkingArea(WorkAreaRectangle);   
  7. this.Top = WorkAreaRectangle.Height + this.Height;   
  8. FormBorderStyle. = FormBorderStyle.None;   
  9. WindowState = FormWindowState.Normal;   
  10. this.SetBounds(WorkAreaRectangle.Width - this.Width,   
  11. WorkAreaRectangle.Height - currentTop, this.Width, this.Height);   
  12. CurrentState = 1;   
  13. timer1.Enabled = true;   
  14. TitleRectangle = fRegionofFormTitle;   
  15. TitlebarRectangle = fRegionofFormTitlebar;   
  16. ContentRectangle = fRegionofFormContent;   
  17. CloseBtnRectangle = fRegionofCloseBtn;   
  18. ShowWindow(this.Handle, 4); //#define SW_SHOWNOACTIVATE   
  19. }  

CurrentState變量表示窗體的狀態是顯示中、停留中還是隱藏中,兩個計時器根據窗體不同狀態對窗體的位置進行更改,我們會使用SetBounds來執行該操作: 

  1. this.SetBounds(WorkAreaRectangle.Width - this.Width, WorkAreaRectangle.Height - currentTop, this.Width, this.Height);   

當窗體需要升起時將窗體的Top屬性值不斷減少,而窗體回落時將Top屬性值增加并超過屏幕的高度窗體就消失了,雖然原理很簡單但仍需精確控制。
SetBackgroundBitmap函數首先將窗體背景圖像保存到BackgroundBitmap變量中,然后根據該位圖圖像輪廓和透明色創建Region,BitmapToRegion就用于完成Bitmap到Region的轉換,程序再將這個Region付值給窗體的Region屬性以完成不規則窗體的創建。

  1. public void SetBackgroundBitmap(Image image, Color transparencyColor)     
  2. {     
  3. BackgroundBitmap = new Bitmap(image);     
  4. Width = BackgroundBitmap.Width;     
  5. Height = BackgroundBitmap.Height;     
  6. Region = BitmapToRegion(BackgroundBitmap, transparencyColor);     
  7. }     
  8. public Region BitmapToRegion(Bitmap bitmap, Color transparencyColor)     
  9. {     
  10. if (bitmap == null)     
  11. throw new ArgumentNullException("Bitmap""Bitmap cannot be null!");     
  12. int height = bitmap.Height;     
  13. int width = bitmap.Width;     
  14. GraphicsPath path = new GraphicsPath();     
  15. for (int j = 0; j < height; j++)     
  16. for (int i = 0; i < width; i++)     
  17. {     
  18. if (bitmap.GetPixel(i, j) == transparencyColor)     
  19. continue;     
  20. int x0 = i;     
  21. while ((i < width) && (bitmap.GetPixel(i, j) != transparencyColor))     
  22. i++;     
  23. path.AddRectangle(new Rectangle(x0, j, i - x0, 1));     
  24. }     
  25. Region region = new Region(path);     
  26. path.Dispose();     
  27. return region;     
  28. }   

通知窗體背景以及文字的繪制在重載的OnPaintBackground方法中完成,而且利用了雙重緩沖區技術來進行繪制操作,代碼如下:

  1. protected override void OnPaintBackground(PaintEventArgs e)   
  2. {   
  3. Graphics grfx = e.Graphics;   
  4. grfx.PageUnit = GraphicsUnit.Pixel;   
  5. Graphics offScreenGraphics;   
  6. Bitmap offscreenBitmap;   
  7. ffscreenBitmap = new Bitmap(BackgroundBitmap.Width, BackgroundBitmap.Height);   
  8. ffScreenGraphics = Graphics.FromImage(offscreenBitmap);   
  9. if (BackgroundBitmap != null)   
  10. {   
  11. offScreenGraphics.DrawImage(BackgroundBitmap, 0, 0,   
  12. BackgroundBitmap.Width, BackgroundBitmap.Height);   
  13. }   
  14. DrawText(offScreenGraphics);   
  15. grfx.DrawImage(offscreenBitmap, 0, 0);   
  16. }  

上述代碼首先返回窗體繪制表面的Graphics并保存在變量grfx中,然后創建一個內存Graphics對象 offScreenGraphics和內存位圖對象offscreenBitmap,將內存位圖對象的引用付值給offScreenGraphics,這樣所有對offScreenGraphics的繪制操作也都同時作用于offscreenBitmap,這時就將需要繪制到通知窗體表面的背景圖像 BackgroundBitmap繪制到內存的Graphics對象上,DrawText函數根據需要顯示文字的大小和范圍調用 Graphics.DrawString將文字顯示在窗體的特定區域。最后,調用Graphics.DrawImage將內存中已經繪制完成的圖像顯示到通知窗體表面。

我們還需要捕獲窗體的鼠標操作,有三個操作在這里進行,1、處理拖動窗體操作,2、處理通知窗體的關閉操作,3、內容區域的單擊操作。三個操作都需要檢測鼠標的當前位置與每個Rectangle區域的包含關系,只要單擊落在特定區域我們就進行相應的處理,代碼如下:

  1. private void TaskbarForm_MouseDown(object sender, MouseEventArgs e)   
  2. {   
  3. if (e.Button == MouseButtons.Left)   
  4. {   
  5. if (TitlebarRectangle.Contains(e.Location)) //單擊標題欄時拖動   
  6. {   
  7. ReleaseCapture(); //釋放鼠標捕捉   
  8. SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0); //發送左鍵點擊的   
  9. //消息至該窗體(標題欄)   
  10. }   
  11. if (CloseBtnRectangle.Contains(e.Location)) //單擊Close按鈕關閉   
  12. {   
  13. this.Hide();   
  14. currentTop = 1;   
  15. }   
  16. if (ContentRectangle.Contains(e.Location )) //單擊內容區域   
  17. {   
  18. System.Diagnostics.Process.Start("http://www.Rithia.com"); }   
  19. }   
  20. }  

結論

該程序可以很好的進行通知窗體的顯示、停留和隱藏操作,并且具備簡單的換膚機制,在利用了雙重緩沖區繪圖技術后,可以保證窗體的繪制平滑且沒有閃爍。

【編輯推薦】

  1. 淺談C++調用C#的DLL程序方法
  2. 教你寫不可思議的C#代碼
  3. C#選擇正確的集合進行編碼
  4. 走進C#奇妙函數之ToLookup
責任編輯:于鐵 來源: 博客園
相關推薦

2010-01-08 18:10:44

VB.NET實現任務欄

2010-01-12 18:21:27

VB.NET任務欄程序

2009-11-06 18:56:22

Windows 7任務欄

2021-07-25 22:18:37

Windows 10Windows微軟

2021-06-17 13:10:08

WindowsWindows 11Windows 10

2021-08-24 23:11:22

Windows 10Windows微軟

2021-08-25 22:49:41

Windows 10Windows微軟

2023-03-29 08:41:52

Windows 11微軟

2010-03-11 09:08:04

Windows 7定制任務欄

2010-01-14 09:04:59

Windows 7任務欄還原

2021-10-20 22:27:17

Windows 10Windows微軟

2021-12-28 08:16:21

Windows 11操作系統微軟

2021-12-30 07:51:12

Windows 11操作系統微軟

2009-12-22 09:05:30

Windows 7Jumplist清理

2009-03-12 18:35:24

Windows 7任務欄

2019-12-20 14:19:50

Windows 10操作系統

2013-12-16 15:35:37

Win9Windows 9概念圖

2021-08-13 22:24:57

Windows 10Windows微軟

2010-05-11 11:14:30

Windows 7任務欄

2016-08-11 16:15:07

Windows 10Windows Def任務欄
點贊
收藏

51CTO技術棧公眾號

精品麻豆av| 亚洲欧美中文日韩v在线观看| 伊人久久大香线蕉成人综合网| 自拍偷拍精品视频| 国内精品福利| 日韩精品久久久久| 亚洲小视频网站| а√天堂资源官网在线资源| 国产精品久久毛片a| 国产自产精品| 国产av无码专区亚洲av| 久久久久久久欧美精品| 欧美精品一区三区| 国产7777777| 日本欧美高清| 欧美videos大乳护士334| 玩弄japan白嫩少妇hd| 午夜在线激情影院| 国产精品色婷婷| 精品久久久久久一区二区里番| 中文字幕日韩欧美精品在线观看| 97视频在线免费| 香蕉视频在线看| 91社区在线播放| 99www免费人成精品| 久久精品久久久久久久| 亚洲高清在线| 欧美人成在线视频| 亚洲综合视频网站| 欧美日韩色图| 亚洲欧美激情一区| 中文字幕一区二区人妻电影丶| 成人在线视频www| 欧美性受xxxx黑人xyx性爽| 国产视频九色蝌蚪| av电影在线地址| 亚洲国产视频一区| 男人添女人下部视频免费| 国内精品久久久久国产| 国产精品美女视频| 亚洲高清资源综合久久精品| 精品视频二区| 国产欧美精品在线观看| 日韩欧美视频一区二区| 牛牛影视精品影视| 国产欧美日韩中文久久| 任我爽在线视频精品一| 国产精品一区二区婷婷| 久久精品人人做人人综合 | 日本一级黄视频| 国产调教视频在线观看| 亚洲欧洲三级电影| 亚洲免费av网| 在线看三级电影| 亚洲综合视频网| 真实国产乱子伦对白视频| 久久不射影院| 婷婷久久综合九色国产成人| 97国产在线播放| 色在线中文字幕| 91久久精品午夜一区二区| 人人爽人人av| 日本国产亚洲| 日韩一区二区麻豆国产| 中文字幕第3页| 欧美jizz19性欧美| 亚洲色图美腿丝袜| 久久久久亚洲AV成人无在| 999久久久91| 欧美精品在线播放| 国产成人无码精品久在线观看 | 女人另类性混交zo| free欧美| 在线成人av影院| 亚洲丝袜在线观看| 日韩av午夜| 一夜七次郎国产精品亚洲| 国产探花在线视频| 亚洲黄色影院| 国产精品老女人视频| 国产又粗又长又大视频| 成人小视频免费在线观看| 欧美日韩成人一区二区三区| 91高清在线| 亚洲老司机在线| 成年网站在线免费观看| 久久女人天堂| 亚洲精品久久久久久下一站| 黄免费在线观看| 女人色偷偷aa久久天堂| 97超级碰碰人国产在线观看| 久久久999久久久| 国产成人av网站| 欧美午夜精品久久久久久蜜| aa在线视频| 色综合久久综合网欧美综合网| 五月激情婷婷在线| 丝袜连裤袜欧美激情日韩| 日韩视频中文字幕| 日本中文在线播放| 国产一区视频网站| 日本在线观看一区二区| 性xxxxfjsxxxxx欧美| 欧美亚洲一区三区| 国产性生活毛片| 天天射天天综合网| 欧美在线激情视频| 黄色小视频免费在线观看| 中文字幕乱码亚洲精品一区| 亚洲熟妇国产熟妇肥婆| 精品伊人久久| 综合国产在线观看| 国产精品第5页| 成人免费看视频| 日韩不卡一二区| 巨胸喷奶水www久久久免费动漫| 精品福利二区三区| 69xx绿帽三人行| 视频一区二区不卡| 久久偷看各类wc女厕嘘嘘偷窃 | 98精品国产高清在线xxxx天堂| 中文字幕日韩第一页| 久久综合资源网| 国产精品久久..4399| 清纯唯美激情亚洲| 久久久精品一区二区| 成人黄色激情视频| 久久―日本道色综合久久| 日韩五码在线观看| y111111国产精品久久久| 久久伊人免费视频| 亚洲在线观看av| 国产精品欧美久久久久一区二区| 日本黄色三级大片| 香蕉久久99| 欧美亚洲激情视频| 深夜福利视频在线免费观看| 亚洲一区视频在线观看视频| 奇米777在线| 99久久夜色精品国产亚洲狼| 国产美女扒开尿口久久久| 国产三级在线| 欧美三级视频在线观看| 少妇愉情理伦三级| 日本女人一区二区三区| 少妇特黄a一区二区三区| jizzyou欧美16| 色噜噜国产精品视频一区二区| 人人妻人人爽人人澡人人精品| 久久精品夜色噜噜亚洲aⅴ| 男人女人黄一级| 成人情趣视频网站| 91久久久久久久一区二区| 成人毛片av在线| 日韩精品一区二区三区三区免费| 免费一级a毛片夜夜看| 成人aaaa免费全部观看| 男人日女人下面视频| 国产成人短视频在线观看| 国产精品视频免费在线| 欧美激情黑人| 日韩欧美一卡二卡| 国产一级做a爰片在线看免费| 成人激情校园春色| 国产一区亚洲二区三区| 第一sis亚洲原创| 亚洲最大激情中文字幕| 91超碰免费在线| 亚洲男人的天堂在线| 亚洲午夜无码久久久久| 亚洲码国产岛国毛片在线| 日本不卡视频一区| 日韩和欧美一区二区三区| 伊人精品久久久久7777| 福利在线一区| 国产精品 欧美在线| av片在线观看免费| 精品中文视频在线| 91成人一区二区三区| 亚洲第一综合色| 日韩毛片无码永久免费看| 国产麻豆日韩欧美久久| 日本www在线播放| 日韩在线看片| 91成人免费看| 日本不卡一二三| 欧美精品在线免费观看| 日本人妖在线| 日韩一区二区在线看| 久久精品视频5| 亚洲激情男女视频| x88av在线| 成人教育av在线| 国产三级生活片| 香蕉成人久久| 国产一区二区三区小说| 成人午夜国产| 九九热久久66| 国产中文欧美日韩在线| 国产97色在线| 白白色在线观看| 日韩视频在线一区| 国产色a在线| 日韩精品免费在线播放| 国产农村妇女毛片精品| 色狠狠av一区二区三区| 国产精品成人免费一区二区视频| 国产精品美女久久久久aⅴ | 综合久久久久久久| 免费看污片网站| 成人av资源网站| 中文字幕在线视频精品| 久久综合影视| 亚洲国产精品久久久久爰色欲| 亚洲欧美亚洲| 26uuu成人| 欧美成人激情| 色女人综合av| 狠狠综合久久av一区二区蜜桃| 国产传媒一区| 99精品国产高清一区二区麻豆| 成人精品久久一区二区三区| 992tv国产精品成人影院| 欧美有码在线视频| 国产夫妻在线播放| 久久久久久久久久久国产| 在线网址91| 久久精品91久久久久久再现| 天堂地址在线www| 在线激情影院一区| av在线女优影院| 国产亚洲综合久久| 成人在线视频成人| 亚洲天堂日韩电影| 黄色软件在线| 国产亚洲精品一区二555| 国产午夜在线观看| 亚洲午夜久久久影院| 你懂的在线网址| 国产一区av在线| 91精品国产综合久久久久久豆腐| 亚洲一区av在线播放| 第一福利在线| 色悠悠久久久久| 黄网站在线免费看| 久久999免费视频| 91黄页在线观看| 欧美中文字幕在线观看| 玛雅亚洲电影| 国产精品久久久久久久久久三级 | 亚洲一区二区三区视频播放| 国内不卡的一区二区三区中文字幕| 国产日韩精品一区二区| 国产精品国产三级在线观看| 91夜夜揉人人捏人人添红杏| 日韩三级精品| 精品一区二区日本| 国产精品一区二区99| 亚洲国产激情一区二区三区| 日韩av有码| 老司机午夜免费福利视频| 欧美日韩午夜| 九九九九免费视频| 日韩精品免费视频人成| 911福利视频| 国产白丝网站精品污在线入口| 日本69式三人交| 国产欧美中文在线| 欧美黄色一级网站| 欧美日韩亚洲高清| 真实的国产乱xxxx在线91| 91精品国产色综合久久不卡蜜臀| 韩国av电影在线观看| 亚洲视频在线观看| 最新国产在线拍揄自揄视频| 国模吧一区二区| 欧美国产日韩电影| 成人性色av| 国产剧情一区| 福利在线小视频| 先锋影音国产一区| 无套内谢丰满少妇中文字幕| 99精品欧美一区二区三区综合在线| 国产人妻大战黑人20p| 亚洲精品一卡二卡| 最近免费中文字幕大全免费版视频| 欧美一区二区三区思思人| 五月婷婷深深爱| 久久精品国产欧美亚洲人人爽| 国产白丝在线观看| 国产精品丝袜视频| 久久电影在线| av磁力番号网| 日韩精品免费专区| 在线观看免费视频黄| 国产精品久久久久影院色老大| 日韩av女优在线观看| 欧美麻豆精品久久久久久| 高潮毛片7777777毛片| 社区色欧美激情 | 成人教育av| 99国产超薄丝袜足j在线观看| 精品久久中文| 成人在线免费观看av| 丁香婷婷综合五月| 男人晚上看的视频| 日本韩国精品在线| 婷婷伊人综合中文字幕| 久久综合九色九九 | 亚洲aaaaaa| 精品国产一区二区三区小蝌蚪 | 欧美爱爱小视频| 欧美日韩视频第一区| 麻豆导航在线观看| 高清欧美性猛交xxxx| 蜜桃精品视频| 黑人巨大国产9丨视频| 日本欧美韩国一区三区| 国产特黄级aaaaa片免| 亚洲国产日日夜夜| 亚洲成人第一区| 欧美另类高清videos| 成人在线啊v| 欧美日韩一级在线| 久久黄色级2电影| 综合 欧美 亚洲日本| 色噜噜狠狠色综合中国| 深夜福利视频一区| 3344国产精品免费看| 精品精品国产毛片在线看| 屁屁影院ccyy国产第一页| 国产精品系列在线观看| 精品人妻伦九区久久aaa片| 欧美日韩国产系列| 爱爱爱免费视频在线观看| 国产精品久久久久久久久久免费 | 成人黄色一区二区| 久久婷婷一区二区三区| 中文字幕高清在线免费播放| 精品亚洲一区二区三区四区五区| 电影在线观看一区| 国内外成人免费视频| 中国女人久久久| 在线免费观看黄色小视频| 色香蕉久久蜜桃| av中文字幕一区二区三区| 国产精品在线看| 在线中文一区| 怡红院一区二区| 黄色成人在线播放| 色视频精品视频在线观看| 欧美做爰性生交视频| 精品一区二区三区在线 | 草莓视频18免费观看| 国产一区二区三区欧美| 免费一区二区三区四区| 女女同性女同一区二区三区按摩| 国产二区国产一区在线观看| 国产成人啪精品午夜在线观看| 日韩电影在线观看中文字幕| 户外露出一区二区三区| 中文字幕人成一区| 国产成人日日夜夜| 五月婷婷中文字幕| 在线午夜精品自拍| 日韩高清在线观看一区二区| 99热亚洲精品| 国产亚洲成av人在线观看导航| 一级片免费网站| 欧美激情在线一区| 欧美人与拘性视交免费看| 亚洲国产高清av| 一区二区三区丝袜| 日本一区高清| 91沈先生作品| 免费久久99精品国产自在现线| 国产不卡在线观看视频| 日韩视频在线永久播放| 亚洲日本天堂| 五月天综合婷婷| 26uuu国产一区二区三区 | 亚洲国产中文字幕久久网| 欧美xxx性| 在线观看污视频| 国产女同互慰高潮91漫画| 亚洲精品无码久久久| 国产精品欧美日韩| 亚洲性色视频| 美国精品一区二区| 亚洲福利视频网| 亚洲一区二区小说| 国产xxxxx在线观看| 亚洲乱码国产乱码精品精98午夜| 你懂的视频在线免费| 成人午夜电影在线播放| 麻豆国产精品777777在线| 可以免费在线观看的av| 伦理中文字幕亚洲| 欧美一二区在线观看| 小毛片在线观看|