0

[Python] Thư viện tkinter

Tạo các đối tượng với tkinter

import tkinter # import thư viện tkinter
from tkinter import * # import tất cả các phương thức có sẵn trong tkinter
from tkinter.ttk import Combobox # import Combobox vào
from tkinter import messagebox
from tkinter import scrolledtext
#———————————————————————————–
myApp=Tk() # Gán biến myApp dạng một cửa sổ
myApp.title(“Làm quen với giao diện tkinter”) # Tiêu đề của cửa sổ
myApp.geometry(“500×300”) # Kích thước dài x rộng của cửa sổ
#———————————————————————————–
”’ 1. Khai báo đối tượng Label trên cửa sổ
[Tên nhãn] = Label(Tên cửa sổ, text=”Nội dung hiển thị”)
Phương thức:
.grid(column = (cột), row = [hàng]) //hiển thị tại vị trí cột và hàng
.place(x=[comumn],y=[row])
[Tên nhãn].config(text=[Nội dung hiển thị]) //Gán nội dung mới cho nhãn
2. Font chữ và cỡ chữ
[Tên nhãn] = Label([Tên cửa sổ],text=[“Nội dung hiển thị”],font=([Tên font],[Cỡ chữ],[Kiểu chữ]),bg=[màu nền],fg=[màu chữ])
Ex: lb_1=Label(myApp,text=”Họ và tên:”,font=(“cambria”,12, “bold”))
”’
#———————————————————————————–
lb_1=Label(myApp,text=”Họ và tên:”,font=(“cambria”,12))
lb_1.grid(column = 0, row = 0)
lb_2=Label(myApp,text=”Giới tính”,font=(“cambria”,12))
lb_2.place(x=0,y=30) #x=column, y=row ; #lb_2.grid(column = 20, row = 10)
#———————————————————————————–
”’ 3. Làm việc với Textbox
– Tạo textbox: [Tên texbox]=Entry([Tên cửa sổ],width=[độ rộng],bd=[độ dày viền])
– Lấy dữ liệu từ textbox: [Tên texbox].get()
– Đặt texbox tại vị trí (x,y): [Tên texbox].place(x=[cột],y=[hàng])
”’
#———————————————————————————–
txt_tb=Entry(myApp, text=”Dao Dinh Ngoc”,width=20,border=3) # Thêm 1 đối tượng là textbox vào cửa sổ
txt_tb.place(x=100,y=0) # Đặt vị trí cho đối tượng
#—————————————Combobox————————————
var = StringVar()
var.set(“one”)
Gt=(“Nam”,”Nữ”,”Chưa biết”,””) # danh sách các lựa chọn
cbx=Combobox(myApp, values=Gt)
cbx.place(x=100, y=30)
#—————————————Listbox————————————-
wd=(“Mon”,”Tue”,”Wen”,”Thu”,”Fri”,”Sat”,”Sun”)
lis_1=Listbox(myApp, height=8, selectmode=’multiple’)
for gt in wd:
lis_1.insert(END,gt)
lis_1.place(x=100, y=55)
#————————————–Radiobutton———————————–
rv=IntVar()
rv.set(1)
rdo1=Radiobutton(myApp, text=”Giáo viên”, variable=rv,value=1)
rdo2=Radiobutton(myApp, text=”Học sinh”, variable=rv,value=2)
rdo1.place(x=250,y=0)
rdo2.place(x=350, y=0)
#————————————-Checkbutton———————————–
cv1 = IntVar()
cv2 = IntVar()
chk1 = Checkbutton(myApp, text = “Âm nhạc”, variable = cv1)
chk2 = Checkbutton(myApp, text = “Thể thao”, variable = cv2)
chk1.place(x=250, y=30)
chk2.place(x=350, y=30)
”’——————————–Msgbox——————————————
* messagebox
.showinfo(“Tiêu đề”,”Nội dung thông báo”)
.showwarning(“Tiêu đề”,”Nội dung cảnh báo”)
.showerror(“Tiêu đề”,”Nội dung báo lỗi”))
res=messagebox.askquestion(“Thông báo”,”Yêu cầu lựa chọn Yes/No”)
res=messagebox.askyesno(“Thông báo”,”Yêu cầu lựa chọn Yes/No”)
res=messagebox.askyesnocancel(“Thông báo”,”Yêu cầu lựa chọn Yes/No/Cancel”)
res=messagebox.askretrycancel(“Thông báo”,”Yêu cầu lựa chọn Retry/Cancel”)
* Giá trị của:
+ res=True (ứng với Yes, Ok, Retry)
+ res=False (ứng với No, Cancel)
+ Với .askyesnocancel: res=True, False, None (ứng với Yes, No, Cancel)
”’
#res=messagebox.askquestion(“Thông báo”,”Yêu cầu lựa chọn Yes/No”)
#res=messagebox.askyesno(“Thông báo”,”Yêu cầu lựa chọn Yes/No”)
#res=messagebox.askretrycancel(“Thông báo”,”Yêu cầu lựa chọn Retry/Cancel”)
#———————————————————————————-
res=messagebox.askyesnocancel(“Thông báo”,”Yêu cầu lựa chọn Yes/No/Cancel”)
if(res==True):
print(“Yes clicked!”)
if(res==False):
print(“No clicked!”)
if(res==None):
print(“Cancel clicked!”)
#———————————————————————————-
”’ 1. Khai báo nút bấm (Button)
+ [Tên nút bấm] = Button([Tên cửa sổ],text=[Nội dung hiển thị],bf=[màu nền], fg=[màu chữ])
+ Xử lý sự kiện nút bấm: Thực hiện 1 chương trình con def
def [tên sự kiện]():
[Câu lệnh]
* Gắn sự kiện cho nút bấm
[Tên nút bấm]=Button([Tên cửa sổ],text=[Nội dung hiển thị],command=[Tên sự kiện])
”’
#———————————————————————————
def cmd_yes():
messagebox.showinfo(“Thông báo”,”Cảm ơn bạn đã đồng ý!”)
#———————————————————————————
cmbt1=Button(myApp,text=”Đồng ý”,font=(“consolas”,10),bg=”yellow”,fg=”red”,command=cmd_yes) # bf=[màu nền], fg=[màu chữ]
cmbt1.place(x=5,y=60)
#———————————————————————————
”’ Scrolledtext //gọi tắt scrt
[tên scrt]=scrolledtext.ScrolledText([Tên cửa sổ],width=x,height=y)
[tên scrt]
.insert(INSERT,[Nội dung chèn vào scrt])
.delete(1.0,END) //xóa nội dung trong scrt
”’
#———————————————————————————
scrtxt=scrolledtext.ScrolledText(myApp,width=20,height=8)
scrtxt.place(x=250,y=55)
scrtxt.insert(INSERT,”Đào Đình Ngọc \n”)
scrtxt.insert(INSERT,”Đào Đình Ngọc \n”)
scrtxt.insert(INSERT,”Đào Đình Ngọc \n”)
#———————————————————————————
myApp.mainloop()

Đào Đình Ngọc

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *