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

用PySimpleGUI輕松為程序和腳本添加GUI

譯文
開發(fā)
很少有人通過(guò)像雙擊.exe文件那樣雙擊.py文件來(lái)運(yùn)行Python程序。普通用戶(非程序員)雙擊.exe文件時(shí),認(rèn)為應(yīng)該彈出可與之交互的窗口。雖然可以使用tkinter借助標(biāo)準(zhǔn)的Python安裝來(lái)創(chuàng)建GUI,但是許多程序不太可能這樣。

[[242548]]

【51CTO.com快譯】很少有人通過(guò)像雙擊.exe文件那樣雙擊.py文件來(lái)運(yùn)行Python程序。普通用戶(非程序員)雙擊.exe文件時(shí),認(rèn)為應(yīng)該彈出可與之交互的窗口。雖然可以使用tkinter借助標(biāo)準(zhǔn)的Python安裝來(lái)創(chuàng)建GUI,但是許多程序不太可能這樣。

1.GUI框架

市面上不缺面向Python的GUI框架。Tkinter、WxPython、Qt和Kivy是幾個(gè)主要的軟件包。此外,還有大量簡(jiǎn)化版GUI軟件包可“包裝”其中一個(gè)主要軟件包,包括EasyGUI、PyGUI和Pyforms。

問(wèn)題是,初學(xué)者連最簡(jiǎn)單的主要軟件包都學(xué)不會(huì)。這使得包裝程序包成為一種潛在的選擇,但對(duì)于大多數(shù)新用戶來(lái)說(shuō),構(gòu)建自定義GUI布局依然很困難或不可能。即便可能,包裝程序包也仍需要編一頁(yè)頁(yè)代碼。

PySimpleGUI(https://github.com/MikeTheWatchGuy/PySimpleGUI)試圖通過(guò)為GUI提供一種超級(jí)簡(jiǎn)單、易于理解且易于定制的界面來(lái)克服這些GUI挑戰(zhàn)。若使用PySimpleGUI,連許多復(fù)雜的GUI也用不了20行代碼。

2.秘密

PySimpleGUI非常適合新手的原因是,該軟件包含有用戶通常需要編寫的大部分代碼。處理按鈕回調(diào)的是PySimpleGUI,而不是用戶的代碼。初學(xué)者很難掌握函數(shù)這個(gè)概念,要求他們?cè)陬^幾周理解回調(diào)函數(shù)確實(shí)勉為其難。

就大多數(shù)GUI而言,安排GUI窗口組件通常需要幾行代碼,每個(gè)窗口組件至少一兩行。 PySimpleGUI使用自動(dòng)創(chuàng)建布局的“自動(dòng)打包程序”。布局GUI窗口無(wú)需pack或grid系統(tǒng)。

最后,PySimpleGUI以巧妙的方式利用Python語(yǔ)言構(gòu)件,減少代碼數(shù)量,簡(jiǎn)單直觀地返回GUI數(shù)據(jù)。用表單布局創(chuàng)建窗口組件時(shí),它已配置到位,無(wú)需編寫多行代碼。

3.GUI是什么?

大多數(shù)GUI做一件事:從用戶處收集信息并返回信息。從程序員的角度來(lái)看,這可以概括為函數(shù)調(diào)用,如下所示:

button, values = GUI_Display(gui_layout)

大多數(shù)GUI需要用戶點(diǎn)擊的按鈕(比如,確定、取消、保存、是或不等)以及用戶輸入的值。GUI的本質(zhì)可以歸結(jié)為一行代碼。

這正是PySimpleGUI的工作原理(對(duì)于簡(jiǎn)單的GUI而言)。調(diào)用以顯示GUI時(shí),在點(diǎn)擊關(guān)閉表單的按鈕之前不執(zhí)行任何操作。

有些較復(fù)雜的GUI,比如點(diǎn)擊按鈕后不關(guān)閉的GUI。包括面向機(jī)器人的遠(yuǎn)程控制界面和聊天窗口。這些復(fù)雜的表單也可以用PySimpleGUI來(lái)創(chuàng)建。

4.快速創(chuàng)建GUI

PySimpleGUI何時(shí)有用?只要你需要GUI就有用。創(chuàng)建和嘗試GUI用不了5分鐘。創(chuàng)建GUI的最快方法是從PySimpleGUI Cookbook(https://pysimplegui.readthedocs.io/en/latest/cookbook/)復(fù)制一個(gè)。遵照這些步驟:

  • 找到類似你想創(chuàng)建的GUI的一個(gè)GUI。
  • 從Cookbook復(fù)制代碼。
  • 粘貼到你的IDE,并運(yùn)行。

不妨看看來(lái)自Cookbook的第一個(gè)recipe。

 

  1. import PySimpleGUI as sg  
  2. # Very basic form.  Return values as a list  
  3. form = sg.FlexForm('Simple data entry form')  # begin with a blank form  
  4. layout = [  
  5.           [sg.Text('Please enter your Name, Address, Phone')],  
  6.           [sg.Text('Name'size=(15, 1)), sg.InputText('name')],  
  7.           [sg.Text('Address'size=(15, 1)), sg.InputText('address')],  
  8.           [sg.Text('Phone'size=(15, 1)), sg.InputText('phone')],  
  9.           [sg.Submit(), sg.Cancel()]  
  10.          ]  
  11. button, values = form.LayoutAndRead(layout)  
  12. print(button, values[0], values[1], values[2]) 

 

它是大小合適的表單。 

圖1:PySimpleGUI數(shù)據(jù)輸入表單

如果你只需要收集幾個(gè)值,它們又都是字符串,可以復(fù)制這個(gè)recipe,根據(jù)你的要求來(lái)修改。

你甚至可以僅用5行代碼來(lái)創(chuàng)建自定義GUI布局。

 

  1. import PySimpleGUI as sg  
  2. form = sg.FlexForm('My first GUI' 
  3. layout = [ [sg.Text('Enter your name'), sg.InputText()],  
  4.            [sg.OK()] ]  
  5. button, (name,) = form.LayoutAndRead(layout)  

圖2:僅用5行代碼的PySimpleGUI表單

5.5分鐘內(nèi)創(chuàng)建自定義GUI

如果你有簡(jiǎn)單的布局,應(yīng)該用不了5分鐘,就能夠用PySimpleGUI創(chuàng)建自定義布局,只要修改來(lái)自Cookbook的代碼。

窗口組件在PySimpleGUI中名為元素。這些元素就是你輸入到Python代碼中的,注意拼寫。

核心元素

Text

InputText

Multiline

InputCombo

Listbox

Radio

Checkbox

Spin

Output

SimpleButton

RealtimeButton

ReadFormButton

ProgressBar

Image

Slider

Column

快捷方式列表

PySimpleGUI還有兩種元素快捷方式。一種就是一模一樣的元素的其他名稱(比如T代替Text)。第二種為元素配置某個(gè)特定的設(shè)置,那樣不必指定所有參數(shù)(比如Submit是上面有文本“Submit”的按鈕)。 

T = Text

Txt = Text

In = InputText

Input = IntputText

Combo = InputCombo

DropDown = InputCombo

Drop = InputCombo

按鈕快捷方式

許多常用按鈕已被實(shí)施成快捷方式。這包括:

FolderBrowse

FileBrowse

FileSaveAs

Save

Submit

OK

Ok

Cancel

Quit

Exit

Yes

No

還有針對(duì)更一般的按鈕功能的快捷方式。

SimpleButton

ReadFormButton

RealtimeButton

這些都是你可以在PySimpleGUI中選擇的GUI窗口組件。如果某個(gè)不在這些列表上,它不會(huì)進(jìn)入表單布局。

6.GUI設(shè)計(jì)模式

GUI中往往不變的元素是創(chuàng)建和顯示窗口的調(diào)用。元素的布局因程序而異。

下面是上述例子的代碼,布局已去除:

 

  1. import PySimpleGUI as sg  
  2. form = sg.FlexForm('Simple data entry form' 
  3. # Define your form here (it's a list of lists)  
  4. button, values = form.LayoutAndRead(layout) 

 

大多數(shù)GUI的流程如下:

  • 創(chuàng)建表單對(duì)象
  • 將GUI定義成列表清單
  • 顯示GUI,獲得結(jié)果

7.GUI布局

想創(chuàng)建自定義GUI,先將表單細(xì)分成幾行,因?yàn)楸韱蚊看味x一行。然后將一個(gè)元素放在另一個(gè)后面,按從左到右的順序。

結(jié)果是看起來(lái)是這樣的“列表清單”:

 

  1. layout = [  [Text('Row 1')], [Text('Row 2'), Checkbox('Checkbox 1', OK()), Checkbox('Checkbox 2'), OK()] ] 

 

這個(gè)布局生成這個(gè)窗口: 

圖3:PySimpleGUI自定義數(shù)據(jù)輸入表單

8.顯示GUI

一旦完成了布局,并復(fù)制了創(chuàng)建和顯示表單的代碼行,現(xiàn)在可以顯示表單,并從用戶處獲得值。

這行代碼顯示表單并提供結(jié)果:

 

  1. button, values = form.LayoutAndRead(layout) 

表單返回兩個(gè)值:所點(diǎn)擊按鈕的文本和用戶輸入到表單的值列表。

如果示例表單已顯示,用戶只是點(diǎn)擊了“確定”按鈕,結(jié)果會(huì)是如此:

 

  1. button == 'OK'  
  2. values == [FalseFalse

 

復(fù)選框元素返回True或False的值。由于復(fù)選框默認(rèn)情況下未勾選,返回的兩個(gè)值都是False。

9.顯示結(jié)果

一旦你有了來(lái)自GUI的值,可以核實(shí)變量中有什么值。不是使用print語(yǔ)言將它們輸出,不妨堅(jiān)持使用GUI、將數(shù)據(jù)輸出到窗口。

PySimpleGUI有好多消息框可供選擇。傳遞到消息框的數(shù)據(jù)在窗口中顯示。該函數(shù)接受眾多變量。你只要表明想在調(diào)用中看到的所有變量。

PySimpleGUI中最常用的消息框是MsgBox。為了顯示前一個(gè)示例的結(jié)果,編寫:

 

  1. MsgBox('The GUI returned:', button, values

10.統(tǒng)統(tǒng)組合起來(lái)

你已知道了基本面,不妨組建一個(gè)含有PySimpleGUI盡可能多元素的表單。另外為了有漂亮的外觀,我們將“look and feel”改成綠色和棕黃色顏色方案。

 

  1. import PySimpleGUI as sg  
  2. sg.ChangeLookAndFeel('GreenTan' 
  3. form = sg.FlexForm('Everything bagel', default_element_size=(40, 1))  
  4. column1 = [[sg.Text('Column 1', background_color='#d3dfda', justification='center'size=(10,1))],  
  5.            [sg.Spin(values=('Spin Box 1''2''3'), initial_value='Spin Box 1')],  
  6.            [sg.Spin(values=('Spin Box 1''2''3'), initial_value='Spin Box 2')],  
  7.            [sg.Spin(values=('Spin Box 1''2''3'), initial_value='Spin Box 3')]]  
  8. layout = [  
  9.     [sg.Text('All graphic widgets in one form!'size=(30, 1), font=("Helvetica", 25))],  
  10.     [sg.Text('Here is some text.... and a place to enter text')],  
  11.     [sg.InputText('This is my text')],  
  12.     [sg.Checkbox('My first checkbox!'), sg.Checkbox('My second checkbox!'default=True)],  
  13.     [sg.Radio('My first Radio!     '"RADIO1"default=True), sg.Radio('My second Radio!'"RADIO1")],  
  14.     [sg.Multiline(default_text='This is the default Text should you decide not to type anything'size=(35, 3)),  
  15.      sg.Multiline(default_text='A second multi-line'size=(35, 3))],  
  16.     [sg.InputCombo(('Combobox 1''Combobox 2'), size=(20, 3)),  
  17.      sg.Slider(range=(1, 100), orientation='h'size=(34, 20), default_value=85)],  
  18.     [sg.Listbox(values=('Listbox 1''Listbox 2''Listbox 3'), size=(30, 3)),  
  19.      sg.Slider(range=(1, 100), orientation='v'size=(5, 20), default_value=25),  
  20.      sg.Slider(range=(1, 100), orientation='v'size=(5, 20), default_value=75),  
  21.      sg.Slider(range=(1, 100), orientation='v'size=(5, 20), default_value=10),  
  22.      sg.Column(column1, background_color='#d3dfda')],  
  23.     [sg.Text('_'  * 80)],  
  24.     [sg.Text('Choose A Folder'size=(35, 1))],  
  25.     [sg.Text('Your Folder'size=(15, 1), auto_size_text=False, justification='right'),  
  26.      sg.InputText('Default Folder'), sg.FolderBrowse()],  
  27.     [sg.Submit(), sg.Cancel()]  
  28.      ]  
  29. button, values = form.LayoutAndRead(layout)  
  30. sg.MsgBox(button, values

 

看起來(lái)代碼好多,但是試著直接用tkinter編寫同樣的GUI布局,你很快意識(shí)到代碼是何等少。

 

圖4:PySimpleGUI高級(jí)自定義數(shù)據(jù)輸入表單

最后一行代碼打開消息框。 這就是它的樣子: 

圖5:PySimpleGUI自定義消息框

消息框調(diào)用的每個(gè)參數(shù)都在一個(gè)新的行上顯示。消息框中有兩行文本;第二行很長(zhǎng),包了好多次。

花點(diǎn)時(shí)間將結(jié)果值與GUI配對(duì),了解如何創(chuàng)建和返回結(jié)果。

11.將GUI添加到程序或腳本

如果你有一個(gè)使用命令行的腳本,不必為了添加GUI而丟棄它。一個(gè)簡(jiǎn)單的辦法是,如果命令行上給出零參數(shù),就運(yùn)行GUI。 否則,執(zhí)行命令行。

只需要這種邏輯:

 

  1. if len(sys.argv) == 1:  
  2.         # collect arguments from GUI  
  3. else 
  4.     # collect arguements from sys.argv 

 

想盡快創(chuàng)建并運(yùn)行GUI,最簡(jiǎn)單的方法就是,從PySimpleGUI Cookbook(https://pysimplegui.readthedocs.io/en/latest/cookbook/)復(fù)制一個(gè)recipe并修改。

原文標(biāo)題:Add GUIs to your programs and scripts easily with PySimpleGUI,作者:Mike Barnett  

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

責(zé)任編輯:龐桂玉 來(lái)源: 51CTO
相關(guān)推薦

2018-09-19 08:50:45

PySimpleGUIGUIPython

2011-01-14 11:40:36

Linux添加刪除

2022-06-24 09:58:52

CurtailLinux

2012-01-09 13:55:35

Java

2012-03-21 09:33:17

ibmdw

2012-04-26 14:02:58

ibmdw

2024-06-12 12:32:09

2010-08-05 16:13:20

DB2數(shù)據(jù)庫(kù)

2021-05-12 11:08:33

PPT代碼工具

2011-05-03 09:14:45

QtOvi商店Symbian

2022-08-01 08:12:14

位運(yùn)算代碼性能

2009-12-03 16:21:51

網(wǎng)上Suse添加字體

2009-06-14 21:47:14

MIDIJava程序

2009-11-09 10:08:31

Visual Stud

2021-06-10 10:26:03

PythonGUI軟件包

2009-05-07 20:05:21

CASRMVmware

2010-03-24 14:14:42

Python GUI

2021-07-29 13:06:29

Python機(jī)器學(xué)習(xí)編程語(yǔ)言

2010-02-05 10:42:58

2022-01-21 09:31:37

PythonLinux視頻
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

久久99精品久久久| 亚洲成人一品| 亚洲精品成人a在线观看| 成人黄色在线免费观看| caoporn国产| 国产精品福利在线观看播放| 精品电影一区二区三区| 日韩免费毛片视频| 黄色av电影在线观看| 丁香桃色午夜亚洲一区二区三区| 日韩精品视频在线观看网址| 三级a在线观看| 婷婷在线播放| 久久精品日产第一区二区三区高清版| 欧美日本中文字幕| 精品国产一区在线| 日韩免费在线电影| 五月激情丁香一区二区三区| 亚洲精品中文字幕在线| 免费a级片在线观看| 久久精品国产精品青草| 欧美一级淫片播放口| 超碰手机在线观看| 欧美精品一二| 亚洲国产三级网| 999热精品视频| 欧美色片在线观看| 午夜精品久久久久久久99樱桃| 国产精品三区在线| 怡红院男人的天堂| 午夜一区在线| 午夜精品久久久久久99热| 久久国产波多野结衣| 精品久久久久久久| 亚洲毛片一区二区| 亚洲欧美在线不卡| 大奶一区二区三区| 欧美一区二区播放| 91插插插插插插插插| 涩涩视频网站在线观看| 亚洲一区二区三区小说| 中文字幕精品在线播放| 国产永久av在线| 91麻豆123| 久久免费99精品久久久久久| 国产 欧美 自拍| 国产二区国产一区在线观看| 成人信息集中地欧美| 中文字幕免费高清在线观看| 天堂蜜桃一区二区三区| 日本久久久久亚洲中字幕| 91香蕉在线视频| 亚洲国产裸拍裸体视频在线观看乱了中文| 日韩成人中文字幕在线观看| 蜜臀aⅴ国产精品久久久国产老师| 欧美人与牲禽动交com | 中文字幕一区在线| 日本不卡免费新一二三区| 欧美xxx.com| 久久久精品天堂| 玛丽玛丽电影原版免费观看1977| 一区二区www| 久久av资源网| 成人激情视频在线| 亚洲一卡二卡在线| 国产麻豆精品一区二区| 99视频免费观看| 天天色综合av| 久久午夜色播影院免费高清| 欧美lavv| 91激情在线| 亚洲天堂精品在线观看| 国产精品日韩三级| 久热在线观看视频| 91黄色免费版| 亚洲制服中文字幕| 91在线一区| 亚洲精品国产精品久久清纯直播| 日韩av片专区| 日韩中文字幕无砖| 精品久久久三级丝袜| 亚洲欧美日韩偷拍| 狠狠色狠狠色综合婷婷tag| 亚洲日本欧美中文幕| 免费成人深夜蜜桃视频| 欧美久久一区| 8090成年在线看片午夜| 国产精品自拍第一页| 极品销魂美女一区二区三区| 成人三级在线| 国产高清美女一级毛片久久| 成人欧美一区二区三区视频网页| 欧美一区1区三区3区公司| 成人高清在线| 一区二区三区中文字幕电影| 无码精品a∨在线观看中文| 韩国久久久久久| 欧美一区二区三区人| 日本japanese极品少妇| 欧美国产一区二区三区激情无套| 亚洲女同精品视频| 免费三级在线观看| 国产日韩亚洲| 成人www视频在线观看| 日本wwwxxxx| 国产精品免费av| 欧美黑人经典片免费观看| 日韩黄色在线| 国产视频精品免费播放| a级片在线观看免费| 可以免费看不卡的av网站| 国产一区二区香蕉| 欧美日韩伦理片| 亚洲在线成人精品| 日本三级黄色网址| 一本久久青青| 久久久日本电影| 97在线视频人妻无码| 99久久精品国产一区二区三区| 激情五月综合色婷婷一区二区| 午夜精品久久久久久久第一页按摩 | 原创国产精品91| 日本熟妇色xxxxx日本免费看| 亚洲午夜精品久久久久久app| 欧美另类极品videosbestfree| 国产十六处破外女视频| 日韩成人免费在线| 国产自产在线视频一区| 日本欧美电影在线观看| 在线综合亚洲欧美在线视频| 91成人在线免费视频| 一区二区三区国产在线| 99re国产| 在线观看小视频| 欧美日韩成人一区| 国产肥白大熟妇bbbb视频| 亚洲黑丝一区二区| www.一区二区三区| 伊人影院在线视频| 538在线一区二区精品国产| 亚洲成人黄色av| 久久在线精品| 鲁丝一区鲁丝二区鲁丝三区| 黄在线观看免费网站ktv| 亚洲成在人线av| 国产一级黄色av| 国产精品一区三区| 欧美另类videos| 国产欧美视频在线| 免费99精品国产自在在线| 国产三级视频在线播放| 亚洲免费观看高清在线观看| 天堂网成人在线| 午夜精彩国产免费不卡不顿大片| 欧美有码在线视频| 深夜视频在线免费| 欧美日韩国产一区在线| 久久人人妻人人人人妻性色av| 日韩电影免费网站| 国产精品香蕉av| 免费黄色网页在线观看| 欧美日韩一区二区三区视频| 超碰人人人人人人人| 精品一区二区在线免费观看| 中文字幕の友人北条麻妃| 精品午夜视频| 97精品免费视频| 欧美91精品久久久久国产性生爱| 亚洲一级二级三级| 中文字幕在线播放视频| 国产精品美女久久久| 日本高清不卡一区二区三| 91成人抖音| 久久婷婷国产麻豆91天堂| 亚洲黄色一级大片| 欧美日韩午夜激情| 一级特黄曰皮片视频| 国产精品一区免费在线观看| 欧美午夜性视频| 禁断一区二区三区在线| 欧美最猛性xxxxx亚洲精品| 天天干,夜夜爽| 欧美午夜精品一区二区蜜桃 | 久久久影视传媒| 日本爱爱免费视频| 欧美在线不卡| 久久青青草综合| 青青热久免费精品视频在线18| 精品福利av导航| 国产精品一区无码| 亚洲天堂a在线| aa片在线观看视频在线播放| 毛片av一区二区| 97视频久久久| 欧美国产小视频| 免费在线国产精品| 日本成人手机在线| 国产91色在线|| 欧美aaaxxxx做受视频| 国产一区二区三区丝袜 | 欧美黑人xx片| 亚洲人a成www在线影院| 国产黄色高清视频| 在线观看欧美精品| 日韩成人免费在线观看| 国产精品久久久久一区二区三区 | 真人做人试看60分钟免费| 日韩av中文字幕一区| 国产日韩欧美日韩| 悠悠资源网亚洲青| 欧美韩日一区二区| 日本在线www| 国产一区二区三区免费视频| 理论片中文字幕| 91精品国产一区二区三区| caoporn国产| 亚洲成人高清在线| 日本青青草视频| 国产精品久久久久影院色老大| 999精彩视频| 中文久久精品| 日韩欧美猛交xxxxx无码| 久久精品国产大片免费观看| 欧美日本韩国国产| 国产精品中文字幕制服诱惑| 91系列在线播放| 国产精品一区二区免费福利视频| 日韩在线观看免费全| 国产精品免费播放| 日韩国产中文字幕| 日韩中文字幕免费观看| 欧美一区二区免费| 亚洲无码久久久久久久| 色国产精品一区在线观看| 亚洲免费在线观看av| 亚洲国产精品一区二区www| 农村黄色一级片| 亚洲激情综合网| 国产美女福利视频| 亚洲色图欧洲色图| 久久一级免费视频| 国产精品乱子久久久久| 极品蜜桃臀肥臀-x88av| 国产视频一区在线播放| 精品无码国产污污污免费网站| 国内精品写真在线观看| 热久久久久久久久| 国产在线一区二区| 在线成人免费av| 国产成人免费视频精品含羞草妖精| 日本在线xxx| 国产欧美精品| 国产麻花豆剧传媒精品mv在线| 久久久综合色| ijzzijzzij亚洲大全| 99久久婷婷| 日本福利视频在线观看| 欧美99在线视频观看| 成人在线视频一区二区三区| 亚洲一级网站| 红桃av在线播放| 奇米影视在线99精品| 国产一级片自拍| 国产成人精品1024| 黄色激情在线观看| 91美女视频网站| 中文字幕免费视频| 国产精品欧美经典| 日本青青草视频| 欧美日韩国产激情| 这里只有精品免费视频| 欧美精选在线播放| 成人乱码一区二区三区| 亚洲精品在线看| 麻豆影视在线观看_| 欧美福利小视频| 天堂av在线网| 国产中文日韩欧美| 粉嫩一区二区三区四区公司1| 成人免费在线视频网址| 91麻豆精品国产91久久久久推荐资源| 国产精品久久一区| **国产精品| 国产亚洲情侣一区二区无| 欧美三级伦理在线| 300部国产真实乱| 久久精品官网| 99999精品| 久久亚洲综合色一区二区三区| 制服丝袜第一页在线观看| 久久久久久麻豆| 国产大片免费看| 日本精品一区二区三区高清 | 日韩免费影院| 国产成人亚洲综合青青| 日本精品国产| 日本一区二区三区四区在线观看 | 九九久久国产| 国产伦精品一区二区三区四区免费 | 少妇无套高潮一二三区| 有坂深雪av一区二区精品| 91精品国产综合久久久蜜臀九色| 亚洲高清不卡在线观看| 极品国产91在线网站| 欧美哺乳videos| av资源在线观看免费高清| 97视频在线观看网址| 99久久这里有精品| 午夜精品一区二区在线观看的| 久久国产精品亚洲人一区二区三区 | 69av在线视频| 婷婷久久免费视频| 日本一区二区三区视频在线观看| 精品高清久久| 青青青国产在线观看| 国产一区二区在线视频| 国产18无套直看片| 欧美性猛交xxxx免费看漫画| 午夜精品一区二区三| 精品国产拍在线观看| 日韩a**中文字幕| 久久久久se| 亚洲黄色精品| 在线xxxxx| 亚洲精品日韩综合观看成人91| 国产一级在线视频| 欧美一区二区视频观看视频| av在线中文| 国产精品国产自产拍高清av水多| 欧美一级网址| 污视频在线免费观看一区二区三区| 日韩毛片视频| 日本精品久久久久中文字幕| av不卡一区二区三区| 日本中文字幕网| 亚洲成人久久久久| 免费在线看污片| 99精品国产一区二区| 欧美国产先锋| 成人三级做爰av| 亚洲激情图片一区| 国产香蕉在线观看| 91国语精品自产拍在线观看性色 | 国产91精品精华液一区二区三区 | proumb性欧美在线观看| 91杏吧porn蝌蚪| 日韩西西人体444www| 2024短剧网剧在线观看| 亚洲一区二区三区在线免费观看| 网友自拍一区| 99热成人精品热久久66| 久久久久亚洲综合| 国产美女www爽爽爽| 色哟哟入口国产精品| 欧美大陆国产| 国产又粗又硬又长| 国产一区二区三区日韩| 欧美黄色aaa| 精品国产露脸精彩对白| 女人高潮被爽到呻吟在线观看| 亚洲va电影大全| 欧美久久综合| 给我免费观看片在线电影的| 精品国产福利视频| 久久久久久久影视| 国产综合久久久久| 欧美一区二区三区久久精品茉莉花| 免费日韩中文字幕| 国产精品毛片久久久久久| 国产精品视频在线观看免费| 久久久国产影院| 亚洲国产欧美国产第一区| 999在线观看视频| 国产亚洲欧美在线| 国产又黄又猛又爽| 久久久久久亚洲精品中文字幕| 伊人久久综合网另类网站| 国产911在线观看| 成人av网站在线| 在线观看亚洲黄色| 欧美激情一区二区三级高清视频| 国产亚洲字幕| 精品少妇一区二区三区在线| 久久久欧美精品sm网站| 一级黄色片免费| 久久久久在线观看| 欧美色婷婷久久99精品红桃| 色哟哟在线观看视频| 欧美色视频日本版| 成人直播在线| 久久综合狠狠综合久久综青草| 国产欧美69| 少妇高潮一区二区三区喷水| 精品国产伦一区二区三区观看体验| av网址在线播放| 久久日韩精品| 国产成人综合网| 天天操天天干天天摸| 色中色综合影院手机版在线观看| 色悠久久久久综合先锋影音下载|