Python tkinter程式設計基礎1(第十二章)

2021-09-28 16:34:24 字數 2823 閱讀 7919

from tkinter import *

# 建立乙個視窗

win = tk()#預設200*200,標題tk

#定義視窗大小

win.title('login')

win['height'] = 300

win['width'] = 300

print('列印win物件的屬性',win.keys())

# 呼叫事件啟用的方式mainloop,用來監聽滑鼠等一些事件

#也是啟動訊息迴圈

win.mainloop()

注:沒有mainloop()事件,視窗就是一閃而過(也就是沒有等滑鼠執行的事件),並且該事件要放到所有元件的後面其他元件才有效視窗中的元件,一般由三部分組成:1. 設定變數值:如:變數值物件=tkinter.型別var(value=)

注:value這裡是設定預設值或不設定,裡面還有其他屬性

2. 元件關鍵字:

如:元件物件=tkinter.元件(屬性,variable=變數值物件,屬性,等)

常用的元件有:

名稱關鍵字

標籤label

文字框entry

核取方塊checkbutton

單選按鈕

radiobutton

按鈕button

組合框ttk.combobox

列表框listbox

注:不同元件,屬性不同,

3. 位置

如:元件物件.place(x=,y=,width=,height=)

注:x,y相對於左上角的偏移量,後面的是元件的寬高設定

labelname=tkinter.label(text='使用者名稱',bg='white')

#把元件放到指定位置,預設x=0,y=0

labelname.place(x=10,y=10,width=80,height=20)

labelpass=tkinter.label(text='密碼',bg='white')

labelpass.place(x=10,y=35,width=80,height=20)

注:x,y分別表示偏移量,且x與y的偏移始終從,頂端開始,也就是他包含了在他之前設定的元件的寬與高

varname=tkinter.strin**ar(value='')#建立字串變數,並關聯文字框

entname=tkinter.entry(width=80,textvariable=varname)

entname.place(x=100,y=10,width=150,height=20)

varpass=tkinter.strin**ar(value='')#建立字串變數,並關聯文字框

entpass=tkinter.entry(width=80,textvariable=varpass,show='*')#show設定文字顯示方式

entpass.place(x=100,y=35,width=150,height=20)

#核取方塊

rememberme=tkinter.intvar(win,value=1)#設定預設選中

checkremember=tkinter.checkbutton(win,text='記住我',variable=rememberme,onvalue=1,offvalue=0)

checkremember.place(x=35,y=65,width=120,height=20)

注:onvalue=1,選中為1 ,offvalue=0,未選中為0

通過變數物件或元件物件.get()或.set()方法來接受與傳值

def login():

#獲取使用者名稱,密碼

print('區別:',entname.get(),varname.get(),varname,entname)#這裡這兩個值是相等的

if varname.get()=='admin' and varpass.get()=='123456':

#彈出訊息框

tkinter.messagebox.showinfo(title='恭喜',message='登陸成功!')

else:

tkinter.messagebox.showerror('警告',message='資訊錯誤')

buttonok=tkinter.button(text='登入',command='login')

buttonok.place(x=55,y=75,width=50,height=25)

注:command,是設定按鈕單擊事件處理函式login 

#也是啟動訊息迴圈

win.mainloop()

注:這個是啟用事件,一定放在最後一步; 這裡win是通過建立視窗而設定的物件

Python Tkinter 布局方式

優點問題,如何在介面上顯示 定義 所有的tkinter 元件都包含專用的幾何管理方法,這些方法是用來組織和管理整個父配件區中子配件的布局的。tkinter 提供了截然不同的三種幾何管理類 pack grid 和place。pack 幾何管理採用塊的方式組織配件,在快速生成介面設計中廣泛採用,若干元件...

python tkinter 單選 多選

單選按鈕 tkinter.radiobutton root,text a pack tkinter.radiobutton root,text b pack tkinter.radiobutton root,text c pack 預設被選中,且單個一組 variable把radiobutton分成...

Python tkinter例項 簡單介紹

usr bin env python3.3 coding utf 8 import tkinter as tk from tkinter import ttk def sample1 hello title 1,最簡單 root tk.tk root.title 你好,這是tkinter世界 roo...