精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

日本一区二区三区www| 亚洲精品无播放器在线播放| 成人在线视频中文字幕| 91理论电影在线观看| 中文字幕欧美日韩精品| 黄色一级片黄色| 国产综合精品久久久久成人av| 国产淫片在线观看| 岛国精品一区| 中文字幕一区在线| 欧美亚洲国产日本| 波多野吉衣在线视频| 高清毛片在线看| 亚洲狼人精品一区二区三区| 制服丝袜激情欧洲亚洲| 日韩精品成人一区二区在线观看| 日干夜干天天干| 蜜桃在线一区| 最新日韩在线视频| 国产精品一区=区| 少妇久久久久久久久久| 国产日本欧美一区二区三区在线| 强开小嫩苞一区二区三区网站| 国产成人精品一区二三区| 久久久久久久久久久久电影| 午夜婷婷国产麻豆精品| 99re在线视频观看| 成年人免费视频播放| 先锋欧美三级| 99精品欧美一区二区三区小说| 欧美国产亚洲视频| 视频区 图片区 小说区| 免费黄色网页在线观看| 精品午夜久久福利影院| 亚洲人成伊人成综合网久久久 | 国产熟女一区二区丰满| 国产一区二区三区四区五区传媒| 亚洲成a人v欧美综合天堂| 亚洲国产激情一区二区三区| 亚洲婷婷综合网| 免费精品国产| 欧美午夜电影在线播放| 五月天亚洲综合小说网| 最近中文字幕免费观看| 欧州一区二区| 欧美人与性动xxxx| 天天干天天色天天爽| 黄色片在线免费观看| 另类小说综合欧美亚洲| 久久精品电影一区二区| 亚洲精品在线网址| freexxx性亚洲精品| aaa国产一区| 91高清免费视频| 中文字幕5566| 久久影视精品| 亚洲欧美日韩国产成人精品影院| 999视频在线观看| 日韩免费一级片| 精品视频免费在线观看| 亚洲精品国精品久久99热一| 熟女人妇 成熟妇女系列视频| 精品亚洲成a人片在线观看| 99久久国产综合精品色伊| 国产精品一区二区三区不卡 | 欧美wwwwwww| 黄网站免费在线播放| 中文字幕高清一区| 97久久夜色精品国产九色 | 欧美性生交大片| 99久久影视| 精品国产伦一区二区三区观看体验| 一区二区三区欧美在线| 婷婷五月综合激情| 麻豆一区二区三| 成人激情电影一区二区| 91久久国产视频| 午夜亚洲视频| 美女av一区二区| 亚洲乱码国产乱码精品精大量| 日韩黄色在线| 色综合咪咪久久| 欧美少妇一区二区三区| 免费国产在线视频| 国产精品影视天天线| 国产99视频精品免视看7| 九九久久免费视频| 不卡日本视频| 日韩精品在线观看一区| 亚洲国产欧美91| 日韩精品一区国产| 欧美片网站yy| 2018国产精品| 久久91麻豆精品一区| 中文字幕亚洲字幕| 久久久久成人网站| 日韩在线中文| 亚洲无av在线中文字幕| av网页在线观看| 中文久久电影小说| 91精品久久久久久久99蜜桃| 麻豆tv在线观看| 中日韩免视频上线全都免费| 精品国产制服丝袜高跟| 一级做a爱视频| 欧美黄色网视频| 亚洲福利精品在线| 稀缺呦国内精品呦| aaa国产精品视频| 亚洲午夜激情免费视频| 国产精品 欧美激情| 成人一区而且| 久久久久久久一区二区| 四虎影院中文字幕| 91视频一区| 国产一区二区三区四区福利| 无码人妻精品一区二区三区夜夜嗨| 1024成人| 国产日产欧美精品| 日韩a在线看| av欧美精品.com| 超碰免费在线公开| 黄色网址在线免费观看| 欧美小视频在线| 久久久噜噜噜www成人网| 女同一区二区免费aⅴ| 亚洲欧美日韩在线不卡| 久久精品在线免费视频| 日韩免费小视频| 亚洲精品一区二区三区蜜桃下载 | 久久a爱视频| 精品91自产拍在线观看一区| 福利视频第一页| 久久午夜av| 国产精品福利片| 在线免费观看一级片| 六月婷婷色综合| 农村寡妇一区二区三区| 加勒比一区二区三区在线| 亚洲自拍偷拍九九九| 一卡二卡三卡视频| 精品极品在线| 色狠狠综合天天综合综合| 天天操天天摸天天爽| 四虎国产精品成人免费影视| 亚洲男人的天堂在线播放| 91视频免费在观看| 性一交一乱一区二区洋洋av| 国产中文一区二区| 国产精品久久久久久久龚玥菲 | 久草视频在线观| 粉嫩久久99精品久久久久久夜| 91在线视频精品| 午夜精品久久久久久久91蜜桃| 国产乱一区二区| 在线一区亚洲| 欧美人与牲禽动交com| 69堂国产成人免费视频| 国产成人免费在线观看视频| 久久伦理在线| 国产成人涩涩涩视频在线观看| 在线观看不卡的av| 中文字幕的久久| 毛片毛片毛片毛片毛片毛片毛片毛片毛片| 亚洲理论电影片| 欧洲成人午夜免费大片| 一区二区三区黄| 成人av网在线| 日本不卡一区二区三区在线观看| www.综合网.com| 欧美午夜影院一区| 国产视频三区四区| 影音先锋久久资源网| 国产精品96久久久久久| 国产在线免费观看| 欧美日韩视频不卡| 天堂www中文在线资源| 色欧美自拍视频| 91日韩在线视频| 亚洲大胆人体大胆做受1| 色婷婷精品久久二区二区蜜臀av | 日韩视频第二页| 国产一区二区三区站长工具| 国产成人精品一区二区三区| 日韩在线无毛| 欧美调教femdomvk| 国产免费无码一区二区视频| 欧美综合二区| 91亚洲精品在线观看| 青春草免费在线视频| 日韩高清av一区二区三区| 亚洲av无码一区二区三区观看| 性欧美精品高清| 永久免费在线看片视频| 国产精品qvod| 国产精品久久久久久影视| 欧美一区二区在线观看视频| 综合网在线视频| 国产在线不卡av| 日韩精品免费一区二区夜夜嗨| 欧美精品中文字幕一区| 无码精品视频一区二区三区 | 精品欧美日韩精品| 精品少妇一区二区三区日产乱码 | 国产精品第一| 精品嫩草影院久久| 亚洲熟女综合色一区二区三区| 中文字幕欧美激情一区| 熟女人妻一区二区三区免费看| 一本久道久久综合婷婷鲸鱼| 成人免费91在线看| 中文字幕中文字幕在线中高清免费版| 欧美在线三级电影| 谁有免费的黄色网址| 国产一区二区精品| 久久99热只有频精品91密拍| 乱人伦视频在线| 亚洲第一视频在线观看| 中国女人真人一级毛片| 亚洲国产精品ⅴa在线观看| 一二三区视频在线观看| 免费看日韩精品| 亚洲在线不卡| 亚洲精品无吗| 国产精品免费一区二区| 青青青国产精品| 日韩暖暖在线视频| 92久久精品| 欧美大片大片在线播放| 嫩草香蕉在线91一二三区| 亚洲国产精品成人av| 国产乱淫片视频| 亚洲欧美日韩国产综合在线 | 中文字幕人妻精品一区| 欧美日韩国产在线| 国产伦精品一区三区精东| 精品一区二区三区香蕉蜜桃| 中文字幕av导航| 欧美精品一区二区三区中文字幕| 国产另类自拍| 这里视频有精品| 99久久精品免费看国产四区| 911福利视频| 日本美女久久| 欧美性受xxx| 波多野结衣中文字幕久久| 色综合五月天导航| 日本高清在线观看| 九九热这里只有在线精品视 | 麻豆91小视频| 88av.com| 日本欧美一区二区三区| 色香蕉在线观看| 羞羞答答成人影院www| 成人免费视频视频在| 日本高清久久| 91国产丝袜在线放| 亚洲乱码一区| 国产精品国产精品国产专区蜜臀ah | 日韩av大片| 亚洲狠狠婷婷综合久久久| 成人女性视频| 在线免费观看一区二区三区| 999视频精品| 国产成人免费高清视频| 欧美日韩一区自拍| 欧美午夜欧美| 精品视频在线播放一区二区三区| 成人免费观看网址| 日韩一区二区三区精品| 国产欧美日韩综合精品二区| 久久黄色影视| 日韩av电影免费观看| 久久精品国产www456c0m| 国产日产欧美一区二区| 黄色日韩精品| 永久域名在线精品| 欧美高清日韩| 日本免费一区二区三区| 日韩一区电影| 草草草视频在线观看| 成人毛片免费看| 美女黄色片网站| 亚洲国产精品第一区二区三区| 欧美a在线视频| 欧美伊人久久| 黄页网站大全在线观看| 国产精品99久久| 99久久免费观看| 美女久久网站| 伊人免费视频二| 99久久久国产精品免费蜜臀| 欧美波霸videosex极品| 一区二区三区中文字幕精品精品| 精品国产成人亚洲午夜福利| 中文字幕一区二区三区在线不卡| 国产精品成人aaaa在线| 日韩美女精品在线| 亚洲欧美在线观看视频| 欧美日韩一区三区| 手机看片1024日韩| x99av成人免费| 一区二区高清不卡| 亚洲一区二区黄| 综合图区亚洲| 国产成人精品综合| 77成人影视| 亚洲国产午夜伦理片大全在线观看网站| 911精品美国片911久久久| 无码人妻丰满熟妇区96| 亚洲毛片在线| 久久久久久久久久一区| 久久电影网电视剧免费观看| 国产国语老龄妇女a片| 国产精品网站在线播放| 国产精品黄色网| 欧美一区午夜视频在线观看| 国产日韩精品suv| 亚洲欧洲一区二区三区久久| 色呦呦在线观看视频| 国产精品久久久久久av下载红粉| 成人午夜网址| 三级在线免费观看| 毛片不卡一区二区| 无码人妻aⅴ一区二区三区69岛| 亚洲最色的网站| 国产免费av观看| 在线观看视频亚洲| 日本不卡三区| 国产成人精品综合| 蜜桃精品wwwmitaows| 久艹视频在线免费观看| 亚洲视频成人| jjzz黄色片| 一区二区三区免费网站| 国产片高清在线观看| 日韩在线www| 国产精品久久乐| 日本不卡一区| 日韩精品一二三四| 91视频这里只有精品| 国产午夜精品福利| 国产肥白大熟妇bbbb视频| 亚洲午夜久久久| 亚洲精品男人的天堂| 91福利国产成人精品照片| 香蕉av在线播放| 国内精品一区二区三区四区| heyzo高清在线| 91亚色免费| 欧美激情视频一区二区三区免费| 色18美女社区| 亚洲欧洲国产日韩| 国产老女人乱淫免费| 久久色免费在线视频| 成人ssswww在线播放| 国产一区二区三区高清| 亚洲激情另类| 成人免费av片| 色哟哟一区二区在线观看 | 成人综合婷婷国产精品久久免费| 99久久免费看精品国产一区| 亚洲国产精品一区二区www| www.欧美色| 欧美mv日韩mv亚洲| 色女人在线视频| 精品国产一区二区三区麻豆小说 | 亚洲午夜未删减在线观看| 日韩大尺度黄色| 91黄在线观看| 欧美日韩一区二区国产| 欧美精品黑人猛交高潮| 日本韩国一区二区| 日本高清中文字幕在线| 亚洲mm色国产网站| 国产最新精品| 国产成人美女视频| 亚洲一区二区av在线| 日韩精品视频无播放器在线看| 国产精品久久久久久久久久尿 | 一本大道东京热无码aⅴ| 盗摄精品av一区二区三区| 国产婷婷色一区二区在线观看| 在线观看欧美日韩| 欧美另类中文字幕| av网站在线观看不卡| 中文字幕中文字幕在线一区 | 国产91精品一区二区| 久久精品视频1| 最新日韩中文字幕| 黄色在线网站噜噜噜| 亚洲a∨一区二区三区| 国产精品一区在线观看你懂的| 香蕉视频一区二区| 中文字幕自拍vr一区二区三区| 天堂av一区| 91香蕉视频污版| 亚洲国产日韩a在线播放| 粉嫩一区二区三区国产精品| 91视频在线免费观看|