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

讓Swing表格支持遠程后臺數據翻頁

開發 后端
不過,這個可以翻頁的表格,只能翻頁本地數據。也就是說,它只能翻已經放入TDataBox中的數據。例如我們一次性在TDataBox中加入了10000條數據。

TWaver Java不但提供了TTable、TElementTable這些表格組件,而且還提供了表格翻頁器TPageNavigator。讓表格和翻頁器結合工作,可以立刻做出一個非常標準的可翻頁的表格界面,如下圖。

 

要讓這兩個組件一起工作,直接這樣new一個實例,并放在界面上就可以了:

  1. TElementTable table = new TElementTable();  
  2. int[] pageSizes = { 1005001000 };  
  3. TPageNavigator nav=new TPageNavigator(table.getTablePaging(), pageSizes) 

其中nav就是一個普通的JPanel,可以放在界面的任何位置。而table可以和nav在界面上完全脫離顯示,如何布局都可以。

不過,這個可以翻頁的表格,只能翻頁本地數據。也就是說,它只能翻已經放入TDataBox中的數據。例如我們一次性在TDataBox中加入了10000條數據,可以通過這個翻頁器進行“每頁100條、共有100頁”這樣的翻頁操作。但是大多時候,我們需要的并不是“本地翻頁”,而是“遠程翻頁”。所謂的遠程翻頁,也就是在每次翻頁時候,TDataBox的數據需要被清空,并從遠程服務器動態重新獲取“下一頁”的數據進行TDataBox加載并且顯示。

如何做到這一點呢?只要用了TWaver Java這一“神器”,做到這一點就不難了。本文就通過一個例子,來說明如何定制一個翻頁器,來攔截翻頁動作,并從服務器獲取翻頁數據,進行動態顯示。

TElementTable的翻頁,實際上是靠一個TablePaging的接口來完成的。TWaver Java靠一個默認的TablePaging實現來完成了本地翻頁。而我們要做的,就是創建一個遠程翻頁的TablePaging,來代替這個默認實現即可。

TablePaging接口定義了下面這些函數。大多數的函數,都是在問你一些簡單的遠端數據方面的問題:一共有多少記錄?一頁有多少條記錄?一共有多少頁?當前是第幾頁?

并且在***頁、***一頁、上一頁、下一頁等操作發生時,回調這個接口。所以,我們只要有了后臺數據,就不難回答這些問題。 

  1. public interface TablePaging {  
  2.      public int getCurrentPageIndex();  
  3.      public void setCurrentPageIndex(int currentPageIndex);  
  4.      public int getPageRowSize();  
  5.      public void setPageRowSize(int pageRowSize);  
  6.      public int getPageTotalCount();  
  7.      public int getTotalRowCount();  
  8.      public void firstPage();  
  9.      public void previousPage();  
  10.      public void nextPage();  
  11.      public void lastPage();  
  12.      public void update();  
  13.      public void addPageListener(PageListener pageListener);  
  14.      public void removePageListener(PageListener pageListener);  
  15.  }  

以上函數基本上都可以顧名思義地理解,就不多作介紹了。我們現在假設后臺有一個數據庫,里面有一個客戶地址的table。通過一個SQL查詢服務,我們可以獲得這些翻頁數據。根據這個假設,我們可以做下面的實現。

  1. public class AddressTablePaging implements TablePaging {  
  2.      private SearchPane parent = null;  
  3.      private List pageListeners = new ArrayList();  
  4.      private TElementTable table = null;  
  5.      private int pageIndex = 1;  
  6.      private int pageSize = 100;  
  7.    
  8.      public AddressTablePaging(TElementTable table, SearchPane parent) {  
  9.          this.table = table;  
  10.          this.parent = parent;  
  11.      }  
  12.    
  13.      private void loadPage() {  
  14.          table.getDataBox().clear();  
  15.          try {  
  16.              int start = (pageIndex - 1) * pageSize;  
  17.              Collection<AddressVO> data = Server.searchAddress(..);  
  18.              for (AddressVO vo : data) {  
  19.                  Node node = new Node();  
  20.                  node.setBusinessObject(vo);  
  21.                  table.getDataBox().addElement(node);  
  22.              }  
  23.          } catch (Exception ex) {  
  24.              ex.printStackTrace();  
  25.              JOptionPane.showMessageDialog(table, ex.getMessage());  
  26.          }  
  27.          firePageChanged();  
  28.      }  
  29.    
  30.      @Override 
  31.      public void firstPage() {  
  32.          pageIndex = 1;  
  33.          loadPage();  
  34.      }  
  35.    
  36.      @Override 
  37.      public int getCurrentPageIndex() {  
  38.          return this.pageIndex;  
  39.      }  
  40.    
  41.      @Override 
  42.      public int getPageRowSize() {  
  43.          return this.pageSize;  
  44.      }  
  45.    
  46.      @Override 
  47.      public int getPageTotalCount() {  
  48.          try {  
  49.              int totalCount = getTotalRowCount();  
  50.              int pageCount = totalCount / getPageRowSize();  
  51.              if (totalCount % getPageRowSize() > 0) {  
  52.                  pageCount++;  
  53.              }  
  54.              return pageCount;  
  55.          } catch (Exception ex) {  
  56.              ex.printStackTrace();  
  57.          }  
  58.          return 0;  
  59.      }  
  60.    
  61.      @Override 
  62.      public int getTotalRowCount() {  
  63.          try {  
  64.              return Server.getAddressTotalCount(.);  
  65.          } catch (Exception ex) {  
  66.              ex.printStackTrace();  
  67.          }  
  68.          return 0;  
  69.      }  
  70.    
  71.      @Override 
  72.      public void lastPage() {  
  73.          this.pageIndex = getPageTotalCount();  
  74.          this.loadPage();  
  75.      }  
  76.    
  77.      @Override 
  78.      public void nextPage() {  
  79.          this.pageIndex++;  
  80.          this.loadPage();  
  81.      }  
  82.    
  83.      @Override 
  84.      public void previousPage() {  
  85.          if (this.pageIndex > 1) {  
  86.              pageIndex--;  
  87.          }  
  88.          this.loadPage();  
  89.      }  
  90.    
  91.      @Override 
  92.      public void setCurrentPageIndex(int pageIndex) {  
  93.          this.pageIndex = pageIndex;  
  94.      }  
  95.    
  96.      @Override 
  97.      public void setPageRowSize(int pageSize) {  
  98.          this.pageSize = pageSize;  
  99.      }  
  100.    
  101.      @Override 
  102.      public void addPageListener(PageListener pageListener) {  
  103.          this.pageListeners.add(pageListener);  
  104.      }  
  105.    
  106.      @Override 
  107.      public void removePageListener(PageListener pageListener) {  
  108.          this.pageListeners.remove(pageListener);  
  109.      }  
  110.    
  111.      public void firePageChanged() {  
  112.          for (int i = 0; i < this.pageListeners.size(); i++) {  
  113.              PageListener pageListener = (PageListener) this.pageListeners.get(i);  
  114.              pageListener.pageChanged();  
  115.          }  
  116.      }  
  117.    
  118.      @Override 
  119.      public void update() {  
  120.      }  
  121.  } 

在上面代碼中,所有的翻頁函數,都會集中調用loadPage()這個函數,從后臺真正獲取數據。而函數getTotalRowCount則負責
從后臺獲得“一共有多少條記錄”。其他函數,基本進行轉發即可。

另外一個需要注意的就是removePageListener/addPageListener等函數。主要用于對監聽器進行管理,包括注冊、刪除、觸發通知等等。

這些也是必須要實現的,不過很簡單,用一個ArrayList維護就行了,觸發時間時候,直接遍歷、回調即可。

具體通過SQL從后臺調用數據的實現,這里就不介紹了。相信每一個實際項目都有不同的數據庫、接口、調用方法方面的差別。這里只是點到為止。

有了這個翻頁器,我們就可以直接用在表格中了。下面繼承一個表格,并用這個翻頁器。

  1. public class AddressTable extends TElementTable {     
  2.      public AddressTablePaging getTablePaging() {  
  3.          return tablePaging;  
  4.      }  
  5.        
  6.  }  

這樣,默認翻頁器被替換,新的后臺翻頁器被置入表格中。***,再通過本文最開始提供的兩行代碼把表格放入界面中,程序就基本完成了。

  1. int[] pageSizes = { 1005001000 };  
  2. this.add(new TPageNavigator(table.getTablePaging(), pageSizes), BorderLayout.CENTER); 

其中pageSizes數組是定義了界面上每頁條數的下拉列表選項,我們可以根據實際應用自己設置,如下圖:

 

這樣,一個完整的后臺翻頁程序就完成了。給表格設置好列、在后臺添加一些數據,跑起來會是這樣(翻頁觀看)

#p#

 

如果再增加一些查詢字段等,就更帥了:

對了,***,再順便給大家介紹一下表格中的可點擊連接是如何做的:

 

要做這種可點擊鏈接,首先要做3件事:1是顯示link,2是顯示手形狀的光標,3是響應鼠標點擊動作。對于1,可以來個“釜底抽薪”:在表格上從根兒上攔截prepareRenderer然后對文字動態修改為html的a標簽的連接方式進行處理:

  1. @Override 
  2. public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {  
  3.     Element element = this.getElementByRowIndex(row);  
  4.     AddressVO vo = (AddressVO) element.getBusinessObject();  
  5.     Component com = super.prepareRenderer(renderer, row, column);  
  6.     if (!vo.isValid()) {  
  7.         com.setForeground(Color.red);  
  8.     } else {  
  9.         com.setForeground(Color.black);  
  10.     }  
  11.  
  12.     if (column == 2 || column == 3) {  
  13.         String text = ((JLabel) com).getText();  
  14.         text = "<html><a href=\"#\">" + text + "</a></html>";  
  15.         ((JLabel) com).setText(text);  
  16.     }  
  17.     return com;  

對于手形光標,可以通過監聽鼠標移動,是否位于鏈接文字上方來動態修改光標:

  1. this.addMouseMotionListener(new MouseMotionAdapter() {  
  2.      @Override 
  3.      public void mouseMoved(MouseEvent e) {  
  4.          int row = rowAtPoint(e.getPoint());  
  5.          int column = columnAtPoint(e.getPoint());  
  6.          setCursor(Cursor.getDefaultCursor());  
  7.          if (row >= 0 && column >= 0) {  
  8.              if (column == 2 || column == 3) {  
  9.                  setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));  
  10.              }  
  11.          }  
  12.      }  
  13.  }); 

***,對于點擊動作,可以通過給table添加鼠標監聽器完成:

  1. this.addMouseListener(new MouseAdapter() {  
  2.      @Override 
  3.      public void mouseClicked(MouseEvent e) {  
  4.          int row = rowAtPoint(e.getPoint());  
  5.          int column = columnAtPoint(e.getPoint());  
  6.          setCursor(Cursor.getDefaultCursor());  
  7.          if (row >= 0 && column >= 0) {  
  8.              if (column == 2 || column == 3) {  
  9.                  Object value = getValueAt(row, column);  
  10.                  //do your action here.  
  11.              }  
  12.          }  
  13.      }  
  14.  }); 

至此,一個完整的可后臺翻頁、可鼠標點擊超鏈接的綜合型table就完成了。在實際使用中,還可以增加更復雜的翻頁和顯示效果。例如在TWaver的兄弟產品2BizBox免費ERP軟件中,就有大量這樣的應用,感興趣的朋友可以到2BizBox.cn去下載安裝一個玩一玩。

 

原文鏈接:http://www.blogjava.net/TWaver/archive/2012/08/03/384716.html

【編輯推薦】

  1. Swing雜記:引入Android的NinePatch技術
  2. JVM的內存溢出異常
  3. Java中的異常對程序效率有無影響
  4. ASP.NET中使用App_Code文件夾的異常
  5. Tomcat中部署后JspFactory報異常的解決方案
責任編輯:張偉 來源: blogjava
相關推薦

2011-03-31 17:02:19

MySQL數據庫遠程連接

2009-12-02 10:33:34

LINQ to SQL

2012-01-17 14:09:54

JavaSwing

2010-08-18 09:03:46

jQueryJSONTrimpath

2017-05-18 10:43:36

熱點圖大數據CPU

2009-07-16 13:26:32

Swing增加

2015-09-08 14:52:22

微信應用數據

2010-08-26 14:16:18

DB2.NET開發

2022-03-07 14:38:10

數據中心人工智能

2017-02-05 17:27:43

2009-07-10 11:31:45

Swing支持透明和不規則窗口

2009-07-03 14:23:49

JSP數據分頁

2012-03-01 11:54:00

2010-03-23 11:55:32

云計算

2011-05-16 10:41:43

MYSQL

2024-09-21 10:38:19

2009-07-10 11:25:48

Swing應用數據驗證

2009-02-09 10:02:00

遠程終端服務

2011-08-11 14:33:13

加密RSA虛擬化

2017-03-17 16:10:24

linux進程后臺
點贊
收藏

51CTO技術棧公眾號

国内精品小视频| 婷婷五月在线视频| 亚洲女同中文字幕| 欧美亚洲高清一区二区三区不卡| 欧美日韩精品免费看| 国产一区二区视频网站| 成人在线电影在线观看视频| 欧美少妇性性性| 午夜久久久久久久久久久| 影音先锋国产资源| 欧美日韩四区| 日韩激情视频在线| 看看黄色一级片| hd国产人妖ts另类视频| 国产拍欧美日韩视频二区| 国产一区二中文字幕在线看| 强行糟蹋人妻hd中文| 欧美大胆视频| 91精品国产高清一区二区三区蜜臀| 日韩成人手机在线| 天天躁日日躁狠狠躁伊人| 青草av.久久免费一区| 国产欧美综合一区二区三区| 亚洲成人精品在线观看| 日韩动漫在线观看| 亚洲第一视频在线播放| 久久一日本道色综合久久| 久久中文字幕国产| 90岁老太婆乱淫| baoyu135国产精品免费| 91精品福利在线| 国产夫妻自拍一区| 91精品专区| va亚洲va日韩不卡在线观看| 国产日韩精品综合网站| 国产性生活网站| 欧美电影《轻佻寡妇》| 日韩av在线精品| 日本亚洲一区二区三区| 桃子视频成人app| 亚洲成av人片在www色猫咪| 亚洲欧美日本国产有色| 亚洲av激情无码专区在线播放| 久久国产免费看| 2019亚洲日韩新视频| 日韩视频中文字幕在线观看| 欧美精品色图| 日韩精品高清在线| 国产白袜脚足j棉袜在线观看| 中文字幕色婷婷在线视频 | 男插女视频网站| 成人影院在线免费观看| 欧美性猛交xxx| 国产九色porny| 青青艹视频在线| 一级黄色小视频| 亚洲欧美bt| 8x海外华人永久免费日韩内陆视频 | 日韩精品无码一区二区三区久久久 | 久久99精品久久久久久园产越南| 精品日韩成人av| 又黄又爽又色的视频| 欧美videos粗暴| 欧美亚洲综合在线| 国产无套粉嫩白浆内谢的出处| 免费毛片b在线观看| 亚洲一区在线视频观看| 国产精品久久久久久久久电影网| 国内外激情在线| 日韩码欧中文字| 香蕉视频在线网址| av片在线观看免费| 亚洲欧美偷拍三级| 亚洲小视频在线播放| 国产三级在线播放| 亚洲色图丝袜美腿| 奇米777四色影视在线看| 国产秀色在线www免费观看| 亚洲欧洲国产日韩| 老汉色影院首页| 国产成人无吗| 洋洋成人永久网站入口| 大西瓜av在线| 日韩脚交footjobhdboots| 婷婷久久综合九色综合伊人色| 国产婷婷一区二区三区| 在线男人天堂| 欧美三级电影精品| 免费成年人高清视频| 日韩欧美中文在线观看| 在线手机中文字幕| 国产精品久久777777| av动漫免费观看| 色噜噜狠狠狠综合欧洲色8| 亚洲一区二区三区中文字幕| 99在线精品免费视频| 欧美黄色网页| 欧美福利视频导航| 中国免费黄色片| 免费看av成人| 日韩在线播放一区| 久久久久久久久精| 久久青草久久| 91视频九色网站| 日本黄色大片视频| 欧美经典一区二区三区| 欧美xxxx吸乳| 日本乱码一区二区三区不卡| 欧美在线一二三| 亚洲一级片网站| 日韩一区二区三区高清在线观看| 亚洲精品www久久久| 国产aⅴ激情无码久久久无码| 午夜免费一区| 91av福利视频| 国产又粗又猛又爽又黄的视频一 | 成人高清在线观看视频| 精品麻豆剧传媒av国产九九九| 日韩av在线免费观看| 免费毛片视频网站| 欧美欧美全黄| 国产精品久久久久久五月尺| 精品女同一区二区三区| 国产亚洲一二三区| 国产免费内射又粗又爽密桃视频| 日韩久久一区二区三区| 日韩免费观看高清完整版在线观看| 亚洲精品视频大全| 国产精品第十页| 国产剧情日韩欧美| 日韩a在线看| 夜夜嗨av一区二区三区中文字幕| 少妇激情一区二区三区| 国产在线播放精品| 欧美精品免费看| 中文亚洲av片在线观看| av高清不卡在线| 久久久精品欧美丰满| 国产综合色一区二区三区| 一广人看www在线观看免费视频| 亚洲成av人片在线观看无码| 毛片毛片毛片毛片毛| 卡通动漫精品一区二区三区| 久久亚洲影音av资源网| 国产成人精品一区二区色戒| 91免费观看视频| 中文字幕av日韩精品| 深夜成人影院| 亚洲精品久久久久久久久久久| 欧美卡一卡二卡三| 久久99久久99| 台湾成人av| 激情亚洲影院在线观看| 日韩电影免费观看在线观看| 亚洲国产综合久久| 成人丝袜18视频在线观看| 看全色黄大色大片| 日本电影久久久| 日韩在线国产精品| 日本熟女毛茸茸| 91麻豆国产在线观看| 国产午夜福利100集发布| avtt综合网| 久久久亚洲影院| 欧美 日韩 国产 成人 在线 91 | 欧美成人精品欧美一级私黄| 国产精欧美一区二区三区蓝颜男同| 免费在线观看成人av| 91国产在线播放| 成人好色电影| 欧美系列日韩一区| 日韩av毛片在线观看| 九色综合狠狠综合久久| 亚洲第一精品区| 精品一区二区三区视频在线播放 | 77777少妇光屁股久久一区| 99久久99久久久精品棕色圆| 亚洲免费电影在线| 国产精品无码自拍| 亚洲国产美女| 蜜桃在线一区二区三区精品| **欧美日韩在线观看| 国产亚洲一级高清| 91精品国产乱码久久久久| 亚洲欧美偷拍卡通变态| 亚洲黄色小说在线观看| 亚洲精品国产日韩| 欧美日韩一区在线视频| 国产精品99久久久久久董美香| 亚洲网站在线播放| 91亚洲国产成人久久精品麻豆| 亚洲精品五月天| 男插女视频网站| 一本色道88久久加勒比精品| 欧美一区二区综合| 亚洲青青久久| 午夜精品久久17c| 激情福利在线| 欧美另类z0zxhd电影| 精品无码免费视频| 久久久久99精品国产片| 在线观看av免费观看| 国产午夜精品一区二区三区欧美| 亚洲一区高清| 黄色免费大全亚洲| 国产精品扒开腿做| 操你啦在线视频| 日韩av最新在线| 国产精品一区二区人人爽| 午夜精品一区二区三区电影天堂| 69精品无码成人久久久久久| 国产传媒久久文化传媒| 国产精品视频26uuu| 中文字幕 欧美 日韩| 国产一区久久| 欧美日韩亚洲一区二区三区在线观看| **欧美日韩在线| 97精品国产97久久久久久| 日本三级视频在线观看| 亚洲激情国产精品| 一级视频在线播放| 黑人欧美xxxx| 中文字幕五月天| 久久精品亚洲一区二区三区浴池| 五月婷婷丁香综合网| 在线观看亚洲| 可以免费看的黄色网址| 精品精品精品| 亚洲一区二区中文| jvid一区二区三区| 久久久亚洲国产天美传媒修理工| 日本不卡视频| 亚洲日本欧美中文幕| 亚洲精品国产av| 91麻豆精品国产自产在线观看一区| 国产无遮挡呻吟娇喘视频| 午夜精品一区二区三区三上悠亚| 精品一区二区三区人妻| 亚洲永久免费av| 欧美黄色免费观看| 一区二区高清免费观看影视大全| 日韩视频中文字幕在线观看| 亚洲品质自拍视频网站| 成年人午夜剧场| 亚洲免费视频一区二区三区| 亚洲成色777777在线观看影院| a毛片在线免费观看| 91精品国产免费| www视频在线| 亚洲爱爱爱爱爱| 人人妻人人澡人人爽久久av| 亚洲成色777777在线观看影院| 国模人体一区二区| 日韩精品中文字幕在线观看| 色在线免费视频| 国产亚洲成精品久久| 超碰97在线免费观看| 日韩在线视频一区| 国产黄大片在线观看画质优化| 欧美老女人性生活| 91九色在线播放| 日本最新高清不卡中文字幕| a成人v在线| 亚洲一区中文字幕| 激情小说亚洲色图| 欧美成人一区二区在线| 精品视频久久| 日本xxx免费| 1024日韩| 日韩av手机版| 国产精品一区二区不卡| 亚洲视频在线播放免费| 久久影音资源网| 亚洲欧美卡通动漫| 夜夜亚洲天天久久| 国产精品777777| 欧美乱熟臀69xxxxxx| 男人天堂综合网| 中文字幕9999| 青草av在线| 国产精品成久久久久三级| 精品视频一区二区三区| 精品日本一区二区三区| 久久中文字幕二区| 成年人网站国产| 美女一区二区久久| 国产性生活毛片| 国产精品国产三级国产普通话蜜臀| 免费在线一级片| 欧美视频一区二区在线观看| 乱精品一区字幕二区| 在线播放日韩精品| 里番在线播放| 国产日韩欧美另类| 另类图片第一页| 资源网第一页久久久| 天堂网中文字幕| 亚洲美女少妇撒尿| 无码人妻精品一区二区三区不卡 | 免费一区二区三区视频导航| 综合视频在线观看| 先锋影音久久久| 欧美一级免费在线| 国产午夜精品一区二区| 久久精品视频9| 欧美久久久久久久久中文字幕| 日批视频在线播放| 久色乳综合思思在线视频| 亚洲女色av| 国产精品区一区二区三含羞草| 久久神马影院| 欧美激情国产精品日韩| 岛国一区二区在线观看| 91禁男男在线观看| 日韩欧美成人免费视频| 黄色av小说在线观看| www.xxxx精品| 欧美大胆成人| 久久精品aaaaaa毛片| 黄色亚洲免费| 日韩精品视频网址| 成人免费一区二区三区在线观看| 天干夜夜爽爽日日日日| 97在线播放免费观看| 国产亚洲精品va在线观看| 碰碰在线视频| 精品久久sese| 亚洲人成免费| 人妻换人妻a片爽麻豆| 亚洲美女视频一区| 国产精品亚洲lv粉色| 日韩中文字幕在线精品| 深夜视频一区二区| 日本一区二区三区视频在线观看| 国产婷婷精品| 久久国产精品无码一级毛片| 午夜精品视频在线观看| 99精品国产99久久久久久97| 久久国产一区二区三区| 亚洲精品大全| 自拍偷拍亚洲色图欧美| 精品一区二区三区蜜桃| 亚洲女同二女同志奶水| 欧美日韩精品系列| 午夜国产福利在线| 国产欧美日韩精品专区| 欧美大片aaaa| 日本黄色一级网站| 亚洲一区二区在线观看视频| 韩国av免费在线观看| 午夜精品久久久久久久男人的天堂 | 精品欧美色视频网站在线观看| 国产精品一区二区三区免费视频 | 久久久精品视频在线观看| www久久久| 一本色道久久综合亚洲精品小说| 麻豆视频在线观看| 欧美一区二区三区不卡| 久草在线视频资源| 精品视频第一区| 日韩在线一二三区| 免费看一级黄色| 日韩一级免费观看| 高清电影在线免费观看| 乱色588欧美| 麻豆精品一区二区三区| 五月天丁香激情| 亚洲国产美女精品久久久久∴| 女海盗2成人h版中文字幕| 欧美性bbwbbwbbwhd| 久久av中文字幕片| 久久久精品国产sm调教| 日韩精品在线影院| 国模私拍国内精品国内av| 欧美日韩一级在线| 成人精品免费看| 波多野结衣电车痴汉| 久久久成人精品视频| 欧美日韩一区二区三区不卡视频| 无码人妻精品一区二区三区66| 亚洲欧洲国产日本综合| 天天干天天干天天干| 国产精品普通话| 亚洲国产国产亚洲一二三| 国产激情av在线| 欧美精品一区二| 日韩毛片免费看| aa在线观看视频| 亚洲欧美欧美一区二区三区| 男人天堂手机在线观看| 国产日韩欧美91| 一二三区精品| 一级片一级片一级片| 亚洲老司机av| 伊人久久影院| 伊人国产在线视频| 午夜精品在线看| 国产色在线观看| 日韩福利影院| 99视频国产精品|