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

詳解 QT Event 以及 Event Filter 事件處理

移動開發
本文介紹的是詳解 QT Event 以及 Event Filter 事件處理,不多說,先來看內容,更多相關內容參考文章末尾。

QT Event 以及 Event Filter 事件處理是本文要介紹的內容,詳細內容如下,先來看內容。Event 和 Event Filters:

1、手動發送事件流程:

(1)構造自己的事件對象:

  1. QEvent *evt = new QEvent( QEvent::Close  );  

(2)發送給指定的對象:

  1. QApplication::sendEvent(this, evt );  

2、定制某個控件的事件處理:

(1)確定需要對哪些控件的哪些事件, 通常的 close以及 key 和 keyboard 事件;

(2)重寫該對象的 event() 函數;
      
3、事件過濾流程: 
 
(1)確定自己需要過濾處理哪些對象的那些事件;   
    
(2)構造自己的事件過濾類: 重寫該類的 eventFilter 函數;

(3)在主程序中實例化一個過濾類對象;
  
(4)調用該過濾類對象的 installEventFilter( receiver, QEvent *event),
  
以在目標對象上安裝該過濾器。

在 Qt 中, event 被建模成派生自abstract QEvent 類的對象, 用來表示在應用程序中發生的事件,或是應用程序需要處理的外部活動產生的事件.

Events 可以被任一 QObject 派生的子類實例對象接收和處理, 但他們是關聯到特定控件的. 本文檔描述 event 在典型應用程序中是如何發送及處理的.

  1. How Events are Delivered   
  2. Event Types   
  3. Event Handlers   
  4. Event Filters   
  5. Sending Events 

 

event 如何發送

通常情況下,當一個事件發生的時候, Qt 通過構造一個合適的 QEvent子類對象來表示事件的發生, 然后將該事件對象發送給特定的 QObject對象( 或其子類實例對象), 通過調用該 QObject 的 event() 函數. 這個 event() 函數不會對事件本身進行處理, 而是首先檢查所接受到event 的類型, 然后根據 event 的類型來調用相應的 event handler, event handler 在處理完 event 之后會返回一個bool值表示 該 event是被接受了,還是被忽略了。

某些事件, 例如 QMouseEvent 和 QKeyEvent, 來自于窗口系統; 某些, 例如 QTimerEvent, 來自于其他的事件源; 某些, 來自于應用程序本身.

Event 類型

Qt為多數 Event 類型建立了相應的類, 常見有QResizeEvent, QPaintEvent, QMouseEvent, QKeyEvent, QCloseEvent.

每一個特定的 event 類都是繼承自 QEvent 基類,添加特定的事件函數. 例如, QResizeEvent 添加了 size() 和 oldSize() 讓控件可以發現他們的尺度,發生了的怎么改變.

某些類實際支持不止一種事件類型. QMouseEvent 就支持鼠標按鍵按下事件,雙擊事件, 移動事件, 以及其他相關操作所引發的事件.

每一個事件都有它的類型, 由 QEvent::Type 定義, 運行時可以很方便的檢測每個事件對象的事件類型,以快速的判斷該事件對象構造自哪個事件類.

由于程序需要和又多樣又復雜的事件進行交互, 所以 Qt 的 event 發送機制設計非常有彈性.

QCoreApplication::notify() 的文檔簡潔的說明了整個機制:

  1. bool QCoreApplication::notify ( QObject * receiver, QEvent * event )   [virtual]  

發送 event 給 接收者: receiver->event(event). 返回從 receiver 的 event handler 返回的值. 注意這個函數適用于該應用程序中的任何線程中的任何對象. 對于特定類型的事件 (例如, 鼠標和鍵盤事件), 該事件將被傳送到 receiver 的 parent 并這樣逐級上傳

直到傳到 top-level object, 如果這些 receiver 都沒有對該事件進行處理的話(比如, 它返回 false ).

共五種處理 event 的方法; 重寫(重實現) QCoreApplication::notify() 這個 virtual 函數只是其 中的一種. 以下列出了這五種方法:

1、重寫 paintEvent(), mousePressEvent() 等. 這是最常用, 最簡單但也是最有限的方式.

2、重寫 QCoreApplication::notify(). 這非常強大, 可以完全控制事件處理; 但一次只可用于一個子類.

3、給 QCoreApplication::instance() 安裝一個 event filter .這個 event filter 就能處理所有控件的所有事件, 因此這與重寫 notify() 一樣強大; 此外, 可以有不止一個應用程序全局級的 event filter. 應用程序全局級 event filter 甚至可以收到已禁用控件的鼠標事件.

注意:  應用程序級 event filter 僅能用于存活在主線程中的對象.

4、 重寫 QObject::event()( 像 QWidget 那樣 ). 如果你重寫了 QObject::event(), 當 Tab 鍵按下時, 你就可以在任何控件級 event filter 捕獲這個 Tab 鍵按下事件之前處理這個事件.

5、給相應的接收對象安裝一個 event filter. 例如一個捕獲所有事件的 event filter, 包含 Tab 和Shift+Tab 鍵按下事件, 在它們沒有改變焦點控件之前.

另請參考 QObject::event() 以及 installEventFilter().

Event Handlers

處理 event 的標準方式是調用一個 virtual 函數. 例如, QPaintEvent 是通過調用 QWidget::paintEvent() 來處理的. 這個 virtual 函數負責進行相應的處理, 通常就是重畫該控件. 如果你在自己實現的 virtual 函數中沒有做所有必要的工作, 你就有必要調用它的基類實現.

例如, 下面的代碼處理一個定制 checkbox 控件的鼠標左鍵點擊事件, 并將所有其他點擊事件轉發給它的基類 QCheckBox 類:

  1. void MyCheckBox::mousePressEvent(QMouseEvent *event)   
  2. {   
  3.     if (event->button() == Qt::LeftButton) {   
  4.         // handle left mouse button here   
  5.     } else {   
  6.         // pass on other buttons to base class   
  7.         QCheckBox::mousePressEvent(event);   
  8.     }   
  9. }  

如果你需要替換基類的函數, 你應該自己實現所有相關的處理. 但是, 如果你只想擴展基類的功能, 那么你就只需實現需要實現的部分, 然后調用基類處理函數來處理你不想處理的情況.

偶爾, 你要處理沒有相應處理函數的特定事件, 或遇到事件處理函數不夠用情況. 最常見的例子是 Tab 鍵按下事件. 通常, QWidget 截獲到 Tab 鍵按下事件后,會移動鍵盤焦點, 但是少數控件需要自己來處理這個事件. 這些對想可以重寫 QObject::event() 函數, 通用的 event handler, 然后在通常處理過程之前或之后寫自己的事件處理過程, 或完全替代原處理過程. 下面是這樣一個很常見的控件:

一個既自己處理 Tab 事件又自己處理某些按鍵事件, 然后將其它不需自己處理的事件轉發給基類處理:

  1. bool MyWidget::event(QEvent *event)   
  2. {   
  3.     if (event->type() == QEvent::KeyPress) {   
  4.         QKeyEvent *ke = static_cast<QKeyEvent *>(event);   
  5.         if (ke->key() == Qt::Key_Tab) {   
  6.             // special tab handling here   
  7.             return true;   
  8.         }   
  9.     } else if (event->type() == MyCustomEventType) {   
  10.         MyCustomEvent *myEvent = static_cast<MyCustomEvent *>(event);   
  11.         // custom event handling here   
  12.         return true;   
  13.     }   
  14.  
  15.     return QWidget::event(event);   
  16. }  

值得注意的是對沒有處理的事件仍調用 QWidget::event(), 并返回該基類調用的返回值以指示事件是否被處理了; 若返回 true 值則將會禁止將該事件再發往其他對象.

Event Filters

有時候一個對象需要檢查, 還可能截取發往其它對象的事件.例如, 對話框通常需要過濾發往某些控件的事件, 比如 更改 Enter 鍵按下的事件處理.

通過調用過濾器對象的 QObject::installEventFilter() 函數, 為目標對象設置一個 event filter, 就可在過濾器對象的QObject::eventFilter() 函數中處理發往目標對象的事件. 一個 event filter 在目標對象收到事件之前處理事件, 這使得過濾器對象在需要的時候可以檢查并丟棄事件. 一個現有的 event filter 可以調用 QObject::removeEventFilter() 來移除已經安裝的 event filter .

當過濾器的 eventFilter() 實現被調用的時候, 它就可以選擇是處理該事件,還是轉發該事件, 或禁止該事件繼續被其它對象處理. 若所有的事件過濾器都允許一個事件可被繼續處理( 每個過濾器處理后都返回 false ), 該事件最終將被發送到目標對象. 如果其中一個中止了這個流程(通過返回 TRUE),

則后面的過濾器對象以及目標對象將不會收到該事件.

  1. bool FilterObject::eventFilter(QObject *object, QEvent *event)   
  2. {   
  3.     if (object == target && event->type() == QEvent::KeyPress) {   
  4.         QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);   
  5.         if (keyEvent->key() == Qt::Key_Tab) {   
  6.             // Special tab handling   
  7.             return true;   
  8.         } else   
  9.             return false;   
  10.     }   
  11.     return false;   
  12. }  

上面代碼演示了另外一種截取發往特定對象 Tab 鍵事件的方法. 在這個例子里, 該過濾器處理 Tab 事件后返回 true 來阻止它們被繼續處理. 所有其他的按鍵事件將被忽略掉,然后過濾器返回 false 來允許該事件被已安裝的后續過濾器處理, 最終發往目標控件.

當然也可以過濾整個應用程序的所有事件, 只需將過濾器對象安裝到 QApplication 對象或QCoreApplication 對象上. 這樣的全局事件過濾器會在任何對象級過濾器()調用之前調用.

這是非常強大的, 但它也拖慢了整個應用程序范圍內每個事件的每次處理過程; 通常使用其他的技術來實現應用程序全局的事件過濾.

發送事件

許多應用程序需要創建并發送自己的事件. 你完全可以模仿 Qt 自有的 event loop 機制, 先構造合適的事件對象, 然調用 QCoreApplication::sendEvent() QCoreApplication::postEvent() 來把這些構造好的事件發送給指定的接收者.

sendEvent() 立即同步處理要發送的 event . 當它返回的時候, 表示相關的事件過濾器 和/或目標對象就處理完了該 event. 對于多數的 event 類, 有一個成員函數 isAccepted() 可以用來判別該事件是已被接受處理了,還是被拒絕處理了.

postEvent() 將 event 提交到一個隊列中等待調度. 在下一次 Qt 的主 event loop 運行的時候,主 event loop 就會調度所有提交到隊列中的 event, 以某種優化的方式. 例如, 如果有幾個 resize event, 他們就會被壓縮成一個事件. 同樣適用于 paint events: QWidget::update() 調用postEvent(), 以避免多次重畫來避免閃爍以及提高速度.

postEvent() 也被用于對象的初始化過程, 因為提交過的 event 通常在相應對象初始化完畢后極短的 時間內就會被調度. 在實現一個控件的時候, 在自定義控件的 constructor 中盡早支持事件機制是非常重要的, 在可能接受到任何事件之前,確保盡早初始化成員變量.

要創建一個定制類型的 event, 你需要定義一個事件號( event number ), 這個事件號應該大于QEvent::User, 并且你可能需要繼承 QEvent 以傳遞關于你定制的 event 類型的特定信息. 
參考 QEvent 文檔以獲取更多細節.

小結:關于詳解 QT Event 以及 Event Filter 事件處理的內容介紹完了,希望本文對你有所幫助。更多請參考編輯推薦。

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-08-29 14:59:26

QtEvent事件

2023-02-26 10:59:51

2023-02-19 12:44:07

領域事件DDD

2010-10-09 10:30:03

JS event

2019-10-11 09:00:00

JavaScriptEvent Loop前端

2023-04-28 15:20:37

JavaScript事件循環

2022-04-13 11:02:12

鴻蒙事件模塊事件Event

2013-10-24 15:23:40

Event Loop

2021-06-04 09:57:49

鴻蒙HarmonyOS應用

2022-11-10 15:19:24

JavaScript事件發射器通信

2023-11-22 12:42:19

CQRS事件溯源

2021-08-01 23:47:54

通用模型驅動

2022-09-07 08:58:58

Node.js框架

2011-06-23 14:05:32

Qt 事件機制

2023-12-28 07:57:27

2022-02-10 16:11:26

EventMysql數據庫

2011-06-29 16:14:59

Qt 事件 過濾器

2023-09-27 08:01:14

數據推送事件

2011-07-01 14:14:34

Qt 事件

2011-07-01 14:20:59

Qt 事件
點贊
收藏

51CTO技術棧公眾號

秋霞午夜av一区二区三区| 卡通动漫精品一区二区三区| 自拍偷拍欧美激情| 国产激情一区二区三区在线观看| 国产香蕉视频在线| av一区二区在线播放| 欧美一区二区三区在线观看视频| 给我免费播放片在线观看| 免费看男男www网站入口在线| 日韩电影在线免费看| 欧美成人手机在线| 在线免费观看日韩av| 六九午夜精品视频| 精品国产成人av| 黄色网址在线免费看| 五月婷中文字幕| 九九热在线视频观看这里只有精品| 国内偷自视频区视频综合| 黑人狂躁日本娇小| 中文有码一区| 精品噜噜噜噜久久久久久久久试看| 日韩精品视频一区二区在线观看| 国产调教视频在线观看| 久久精品日产第一区二区三区高清版| 成人蜜桃视频| 国产免费无遮挡| 日韩精品免费专区| 91精品国产自产91精品| 欧美精品一级片| 国产精品久久久久久久| 亚洲欧美激情四射在线日| 香蕉在线观看视频| 999色成人| 欧美性大战久久| 欧美成人免费高清视频| av资源在线看片| 一区二区视频在线| 热这里只有精品| 69av在线| 中文字幕欧美区| 欧美中日韩免费视频| 五月天婷婷在线观看| 成人a免费在线看| 亚洲一区中文字幕在线观看| 一区二区三区免费在线视频| 日韩av在线播放中文字幕| 热re91久久精品国99热蜜臀| 日韩精品一区二区三区国语自制| 国内精品久久久久久久影视麻豆 | 肥熟一91porny丨九色丨| 一区二区精品视频在线观看| 青青草国产精品亚洲专区无| 国产99久久精品一区二区 夜夜躁日日躁 | 人妻巨大乳一二三区| 伊人久久大香| 在线播放亚洲一区| 一级黄色片在线免费观看| 精品国产欧美| 日韩精品一区二区三区中文不卡 | 欧美人与动xxxxz0oz| 亚洲丁香婷深爱综合| 欧美双性人妖o0| 日韩超碰人人爽人人做人人添| 亚洲精品不卡在线| 国精产品一区一区三区免费视频| 国产精品自拍区| 中文亚洲视频在线| 日本在线一级片| 国产精品jizz在线观看美国| 性色av香蕉一区二区| 久久午夜免费视频| 日韩avvvv在线播放| 国产欧美在线视频| 国产肥老妇视频| 白白色 亚洲乱淫| 欧美日韩精品不卡| 免费av不卡| 亚洲一卡二卡三卡四卡 | 日韩不卡在线观看日韩不卡视频| 国产精品久久久久久久午夜| 97久久人国产精品婷婷| 国产成人99久久亚洲综合精品| 国产精品视频500部| 欧美成熟毛茸茸| 最好看的中文字幕久久| 日韩一级性生活片| 亚洲成人va| 日韩午夜三级在线| 欧美亚一区二区三区| 日韩欧美国产精品综合嫩v| 欧美成人午夜视频| 亚洲天堂一区在线| 久久国产精品免费| 久久久www免费人成黑人精品| 亚洲天天影视| 精品久久久久国产| 超碰人人草人人| 久久成人福利| 久久影视电视剧免费网站| 日韩欧美大片在线观看| 蜜桃精品在线观看| 黑人中文字幕一区二区三区| 一级毛片视频在线观看| 图片区小说区区亚洲影院| 污网站免费在线| 六月丁香久久丫| 久热精品视频在线观看一区| 9i看片成人免费看片| 国产精品一二一区| 日韩欧美一区二区视频在线播放 | 欧美日韩亚洲一区二区三区在线| 欧美在线亚洲在线| 亚洲av永久无码国产精品久久| 国产亚洲精品免费| 精品无码国产一区二区三区av| 国产伊人久久| 亚洲午夜色婷婷在线| 日本视频www| 国产精品小仙女| 亚州欧美一区三区三区在线 | 色呦呦日韩精品| 日本wwwwwww| 久久精品青草| 国产精品日韩久久久久| 色在线免费视频| 亚洲成a天堂v人片| 国产成人精品综合久久久久99| 日韩欧美视频| 国产精品女视频| 日本精品专区| 精品福利在线看| 欧美日韩人妻精品一区在线| 中文字幕乱码亚洲无线精品一区| 国产精品免费视频xxxx| av在线免费播放网站| 色综合久久中文综合久久牛| 免费黄色三级网站| 精品动漫3d一区二区三区免费| 亚洲r级在线观看| 毛片在线视频| 51精品久久久久久久蜜臀| 国精品无码人妻一区二区三区| 一区二区三区福利| 精品国产91亚洲一区二区三区www| 午夜小视频在线观看| 日韩亚洲欧美成人一区| 黄色a级片在线观看| 国产乱人伦偷精品视频免下载 | 99成人在线| 久久国产手机看片| 亚洲人成午夜免电影费观看| 日韩精品视频免费| 黄色一级视频免费看| 久久久久久日产精品| 黄色国产精品视频| 精品国产一区二区三区香蕉沈先生 | 99热这里只有精品4| 精品午夜一区二区三区在线观看| 伊人久久大香线蕉av一区| 亚州欧美在线| 欧美超级免费视 在线| www久久久久久| 亚洲成人福利片| 熟女俱乐部一区二区视频在线| 免费视频久久| 五月天亚洲综合| 国产精品一区免费在线| 久久久亚洲福利精品午夜| 三级小视频在线观看| 欧美色欧美亚洲高清在线视频| 特级西西www444人体聚色| 美女视频网站久久| 男女裸体影院高潮| 日韩欧美美女在线观看| 国产精品久久久久久久久久ktv | 51色欧美片视频在线观看| 久久99久久| 777奇米成人网| 国产无遮挡免费视频| 国产午夜精品一区二区三区四区| www.亚洲高清| 亚洲国产精品一区| 日韩免费电影一区二区三区| www.久久久.com| 7777精品视频| 求av网址在线观看| 亚洲成人av片| 中文字幕理论片| 亚洲午夜精品久久久久久久久| 黄色aaa视频| 国产不卡高清在线观看视频| 激情网站五月天| 欧美黄在线观看| 日本不卡在线播放| 91欧美日韩在线| 国产精品爽爽ⅴa在线观看| 天堂av资源在线观看| 亚洲视频在线观看免费| 国产成人a人亚洲精品无码| 精品国产乱码久久久久久天美| 日本激情视频一区二区三区| www.欧美.com| 黄色aaaaaa| 日韩av电影天堂| 国产精品国产亚洲精品看不卡| 国产精品99久久精品| 久久涩涩网站| 爱高潮www亚洲精品| 国产精品视频一区二区高潮| av电影院在线看| 有码中文亚洲精品| 麻豆导航在线观看| 精品少妇一区二区三区视频免付费 | 日韩欧美一区二区三区在线观看 | 亚洲人在线观看| 后入内射欧美99二区视频| 欧美日韩一区二区三区免费看| 日产精品久久久久久久| 亚洲另类色综合网站| 国产精品久久久久久成人| 91论坛在线播放| 性活交片大全免费看| 国产在线播放一区| 777视频在线| 免费在线观看一区二区三区| 黄色一级片播放| 好看的日韩av电影| 欧美日韩亚洲国产成人| 日韩国产在线| 亚洲精品国产系列| 欧洲杯足球赛直播| 日韩偷拍一区二区| 你懂的一区二区三区| 久久99精品久久久久子伦| 岛国av一区| a级国产乱理论片在线观看99| 国产高清日韩| 91亚洲精品久久久久久久久久久久| 人人玩人人添人人澡欧美| 国产精品精品久久久| 粉嫩一区二区三区| 国产精品96久久久久久又黄又硬| 欧美专区福利免费| 国产成一区二区| 免费观看成人性生生活片| 国产精品扒开腿做爽爽爽的视频| 爱情电影社保片一区| 国产91色在线| 成人mm视频在线观看| 国产精品中文在线| 成人短视频软件网站大全app| 成人午夜激情免费视频| 亚洲成人影音| 国产精品一区二| 偷窥自拍亚洲色图精选| 六月婷婷久久| 国产区精品区| 亚洲砖区区免费| 亚洲综合婷婷| 欧美狂野激情性xxxx在线观| 精品999日本| 欧美韩国日本在线| 日本欧美在线看| 涩涩网站在线看| 国产99久久久国产精品潘金网站| 精品人妻伦一二三区久| 91免费观看在线| 日韩毛片无码永久免费看| 中文字幕精品—区二区四季| 黄色香蕉视频在线观看| 亚洲小说欧美激情另类| 毛片基地在线观看| 欧美麻豆精品久久久久久| 国产黄色大片网站| 日韩av网站导航| 999国产在线视频| 欧美高清视频在线观看| 在线手机中文字幕| 成人免费淫片视频软件| 国产女人18毛片水真多18精品| 欧美日韩系列| 中文字幕免费一区二区| 亚洲中文字幕无码不卡电影| 美女在线一区二区| 亚洲精品国产成人av在线| 久久久久久久久久美女| 农村妇女精品一区二区| 欧美色另类天堂2015| 国产欧美日韩成人| 日韩精品在线电影| 国产超级va在线视频| 国产91精品视频在线观看| 亚洲精品成a人ⅴ香蕉片| 国产精选一区二区| 国产精品国产三级国产在线观看| 老太脱裤子让老头玩xxxxx| 蜜桃精品视频在线| 亚洲国产精品无码久久久久高潮| 国产精品久久网站| 国产成人一区二区三区影院在线| 欧美日韩电影在线| 性xxxfllreexxx少妇| 久久影视电视剧免费网站| 免费成人美女女| 精品久久蜜桃| 欧美精品午夜| 久热在线视频观看| 久久综合色一综合色88| 久久免费视频6| 欧美精品欧美精品系列| 男女污污视频在线观看| 久久久久久久久久久网站| 亚洲精品成a人ⅴ香蕉片| 你懂的视频在线一区二区| 激情综合网址| 能看毛片的网站| 中文字幕亚洲一区二区av在线| 中国一级免费毛片| 精品久久久久一区| 成人在线观看免费网站| 国产欧美一区二区三区久久| 欧美激情在线精品一区二区三区| 日韩中文字幕在线免费| 国产成人在线免费| 神马久久精品综合| 欧美日韩精品电影| 国产精品二线| 国产99久久久欧美黑人| 丝袜美腿综合| 91国视频在线| 99精品热视频| 国产又大又黑又粗免费视频| 日韩欧美电影一二三| 激情在线小视频| 91精品久久久久久久久久久| 欧美丝袜激情| 性欧美videossex精品| 国产日韩欧美精品电影三级在线| 51国产偷自视频区视频| 国产视频精品xxxx| 中文字幕在线视频久| 欧美18视频| 日韩成人免费电影| 网爆门在线观看| 欧美日韩的一区二区| 香蕉视频在线看| 成人高清视频观看www| 91九色精品国产一区二区| 91看片破解版| 亚洲女同女同女同女同女同69| 国产精品乱码久久久| 欧美成人黑人xx视频免费观看| 欧美电影院免费观看| 久久久久久久9| 99精品国产99久久久久久白柏| 亚洲天堂视频网站| 中文国产成人精品久久一| 九九九精品视频| 日韩专区第三页| 99精品国产热久久91蜜凸| 中文字幕高清在线免费播放| 在线电影av不卡网址| 色999韩欧美国产综合俺来也| 少妇高潮流白浆| 成人午夜激情影院| 亚洲熟女综合色一区二区三区| 亚洲最大中文字幕| 精品国产一区二区三区2021| 国产成a人亚洲精v品在线观看| 91视频免费观看| 亚洲自拍第二页| 欧美黑人巨大精品一区二区| 日韩系列在线| 老司机久久精品| 亚洲综合色区另类av| 男女网站在线观看| 成人激情在线观看| 亚洲黑丝一区二区| 永久免费毛片在线观看| 欧美一级搡bbbb搡bbbb| 手机在线观看av| 在线观看成人一级片| 成人精品国产免费网站| 天天爽夜夜爽人人爽| 欧美wwwxxxx| 亚洲美女久久| 日本中文字幕在线不卡| 天天影视色香欲综合网老头| 91伦理视频在线观看| 国产在线一区二区三区四区| 蜜桃av噜噜一区| 国产情侣在线视频| 色99之美女主播在线视频| 国产精品调教| 欧美一级xxxx| 日韩欧美aaa| 黄色大片在线| 亚洲在线不卡| 国产亚洲一区二区在线观看| 超碰免费在线97|