国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Pythonの基本入門チュートリアル / python GUI編程(Tkinter)

python GUI編程(Tkinter)

python提供了多個(gè)圖形開發(fā)界面的庫(kù),幾個(gè)常用Python GUI庫(kù)如下:

  • Tkinter: Tkinter模塊("Tk 接口")是Python的標(biāo)準(zhǔn)Tk GUI工具包的接口.Tk和Tkinter可以在大多數(shù)的Unix平臺(tái)下使用,同樣可以應(yīng)用在Windows和Macintosh系統(tǒng)里.,Tk8.0的后續(xù)版本可以實(shí)現(xiàn)本地窗口風(fēng)格,并良好地運(yùn)行在絕大多數(shù)平臺(tái)中。

  • wxPython:wxPython 是一款開源軟件,是 Python 語(yǔ)言的一套優(yōu)秀的 GUI 圖形庫(kù),允許 Python 程序員很方便的創(chuàng)建完整的、功能鍵全的 GUI 用戶界面。

  • Jython:Jython程序可以和Java無(wú)縫集成。除了一些標(biāo)準(zhǔn)模塊,Jython使用Java的模塊。Jython幾乎擁有標(biāo)準(zhǔn)的Python中不依賴于C語(yǔ)言的全部模塊。比如,Jython的用戶界面將使用Swing,AWT或者SWT。Jython可以被動(dòng)態(tài)或靜態(tài)地編譯成Java字節(jié)碼。


Tkinter 編程

Tkinter 是Python的標(biāo)準(zhǔn)GUI庫(kù)。Python使用Tkinter可以快速的創(chuàng)建GUI應(yīng)用程序。

由于Tkinter是內(nèi)置到python的安裝包中、只要安裝好Python之后就能import Tkinter庫(kù)、而且IDLE也是用Tkinter編寫而成、對(duì)于簡(jiǎn)單的圖形界面Tkinter還是能應(yīng)付自如。

創(chuàng)建一個(gè)GUI程序

  • 1、導(dǎo)入Tkinter模塊

  • 2、創(chuàng)建控件

  • 3、指定這個(gè)控件的master, 即這個(gè)控件屬于哪一個(gè)

  • 4、告訴GM(geometry manager)有一個(gè)控件產(chǎn)生了。

實(shí)例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import Tkinter
top = Tkinter.Tk()
# 進(jìn)入消息循環(huán)
top.mainloop()

以上代碼執(zhí)行結(jié)果如下圖:

1033.jpg

實(shí)例2:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

from Tkinter import *           # 導(dǎo)入 Tkinter 庫(kù)
root = Tk()                     # 創(chuàng)建窗口對(duì)象的背景色
                                # 創(chuàng)建兩個(gè)列表
li     = ['C','python','php','html','SQL','java']
movie  = ['CSS','jQuery','Bootstrap']
listb  = Listbox(root)          #  創(chuàng)建兩個(gè)列表組件
listb2 = Listbox(root)
for item in li:                 # 第一個(gè)小部件插入數(shù)據(jù)
    listb.insert(0,item)

for item in movie:              # 第二個(gè)小部件插入數(shù)據(jù)
    listb2.insert(0,item)

listb.pack()                    # 將小部件放置到主窗口中
listb2.pack()
root.mainloop()                 # 進(jìn)入消息循環(huán)

以上代碼執(zhí)行結(jié)果如下圖:

1034.jpg

Tkinter 組件

Tkinter的提供各種控件,如按鈕,標(biāo)簽和文本框,一個(gè)GUI應(yīng)用程序中使用。這些控件通常被稱為控件或者部件。

目前有15種Tkinter的部件。我們提出這些部件以及一個(gè)簡(jiǎn)短的介紹,在下面的表:

控件描述
Button按鈕控件;在程序中顯示按鈕。
Canvas畫布控件;顯示圖形元素如線條或文本
Checkbutton多選框控件;用于在程序中提供多項(xiàng)選擇框
Entry輸入控件;用于顯示簡(jiǎn)單的文本內(nèi)容
Frame框架控件;在屏幕上顯示一個(gè)矩形區(qū)域,多用來(lái)作為容器
Label標(biāo)簽控件;可以顯示文本和位圖
Listbox列表框控件;在Listbox窗口小部件是用來(lái)顯示一個(gè)字符串列表給用戶
Menubutton菜單按鈕控件,由于顯示菜單項(xiàng)。
Menu菜單控件;顯示菜單欄,下拉菜單和彈出菜單
Message消息控件;用來(lái)顯示多行文本,與label比較類似
Radiobutton單選按鈕控件;顯示一個(gè)單選的按鈕狀態(tài)
Scale范圍控件;顯示一個(gè)數(shù)值刻度,為輸出限定范圍的數(shù)字區(qū)間
Scrollbar滾動(dòng)條控件,當(dāng)內(nèi)容超過(guò)可視化區(qū)域時(shí)使用,如列表框。.
Text文本控件;用于顯示多行文本
Toplevel容器控件;用來(lái)提供一個(gè)單獨(dú)的對(duì)話框,和Frame比較類似
Spinbox輸入控件;與Entry類似,但是可以指定輸入范圍值
PanedWindowPanedWindow是一個(gè)窗口布局管理的插件,可以包含一個(gè)或者多個(gè)子控件。
LabelFramelabelframe 是一個(gè)簡(jiǎn)單的容器控件。常用與復(fù)雜的窗口布局。
tkMessageBox用于顯示你應(yīng)用程序的消息框。

標(biāo)準(zhǔn)屬性

標(biāo)準(zhǔn)屬性也就是所有控件的共同屬性,如大小,字體和顏色等等。

屬性描述
Dimension控件大?。?/td>
Color控件顏色;
Font控件字體;
Anchor錨點(diǎn);
Relief控件樣式;
Bitmap位圖;
Cursor光標(biāo);

幾何管理

Tkinter控件有特定的幾何狀態(tài)管理方法,管理整個(gè)控件區(qū)域組織,一下是Tkinter公開的幾何管理類:包、網(wǎng)格、位置

幾何方法描述
pack()包裝;
grid()網(wǎng)格;
place()位置;