python01:Tkinter版學(xué)生管理 洪君

Tkinter是python自帶的UI包,無(wú)需下載,只需要導(dǎo)入

tkinter 文檔? ?http://effbot.org/tkinterbook/

//http://effbot.org/tkinterbook////

文檔是英文版本的,可以翻譯!

界面效果如下:

python的pc端界面還是可以的,較為美觀!

?

頁(yè)面較為粗狂,未經(jīng)過(guò)專(zhuān)業(yè)設(shè)計(jì)!

系統(tǒng)的對(duì)象封裝,數(shù)據(jù)連接使用的是原本控制臺(tái)版本的!

python001:教程版的控制臺(tái)代碼輸出邏輯 增刪改查方法:

控制臺(tái)版本的系統(tǒng),包含對(duì)象封裝,數(shù)據(jù)連接

#導(dǎo)入tkinter 包fromtkinterimport*fromtkinterimportttkfromcom.hc.dao.Connectimport*fromcom.hc.entity.Studentimport*root=Tk()# 窗口寬高 英文Xroot.geometry('600x500')# 固定窗口root.resizable(width=False,height=False)# 窗口標(biāo)題root.title('hc king')# 標(biāo)簽 \ nLabel(root,text='信息管理',bg='white',fg='red',font=('宋體',15)).pack(side=TOP,fill='x')# 數(shù)據(jù)表格#居中dataTreeview=ttk.Treeview(root,show='headings',column=('sid','sname','sex','sage'))dataTreeview.column('sid',width=150,anchor="center")dataTreeview.column('sname',width=150,anchor="center")dataTreeview.column('sex',width=150,anchor="center")dataTreeview.column('sage',width=150,anchor="center")dataTreeview.heading('sid',text='編號(hào)')dataTreeview.heading('sname',text='名稱(chēng)')dataTreeview.heading('sex',text='性別')dataTreeview.heading('sage',text='年齡')bottomFrame=Frame(root)sidLabel=Label(leftFrame,text='編號(hào):')snameLabel=Label(leftFrame,text='名稱(chēng):')sexLabel=Label(leftFrame,text='性別:')sageLabel=Label(leftFrame,text='年齡:')sidEntry=Entry(leftFrame)snameEntry=Entry(leftFrame)sexEntry=Entry(leftFrame)sageEntry=Entry(leftFrame)sidLabel.grid(row=0,column=0)sidEntry.grid(row=0,column=1)snameLabel.grid(row=0,column=2)snameEntry.grid(row=0,column=3)sexLabel.grid(row=1,column=0)sexEntry.grid(row=1,column=1)sageLabel.grid(row=1,column=2)sageEntry.grid(row=1,column=3)insButton=Button(rightFrame,text="添加",command=insert)insButton.grid(row=0,column=0)delButton=Button(rightFrame,text="刪除",command=delete)delButton.grid(row=0,column=1)updButton=Button(rightFrame,text="修改",command=update)updButton.grid(row=1,column=0)selButton=Button(rightFrame,text="查詢",command=select)selButton.grid(row=1,column=1)#定位式布局,即坐標(biāo)dataTreeview.bind('<<TreeviewSelect>>',treeSel)#為dataTreeview綁定事件bottomFrame.pack()#組件顯示root.mainloop()#界面運(yùn)行

上述是系統(tǒng)的界面。

#點(diǎn)擊dataTreeview的某一項(xiàng),就把數(shù)據(jù)拿到,放進(jìn)四個(gè)輸入框內(nèi)deftreeSel(event):item=dataTreeview.selection()? ? itemvalues=dataTreeview.item(item,'values')? ? clearEntry()? ? sidEntry.insert(0,itemvalues[0])? ? snameEntry.insert(0, itemvalues[1])? ? sexEntry.insert(0, itemvalues[2])? ? sageEntry.insert(0, itemvalues[3])#把四個(gè)輸入框的數(shù)據(jù)放進(jìn)對(duì)象defupdate():student = Student()? ? student.stuId = sidEntry.get()? ? student.stuName = snameEntry.get()? ? student.stuSex = sexEntry.get()? ? student.stuAge = sageEntry.get()? ? DataBase().updUser(student)? ? clearAndall()#刪除dataTreeview里面的數(shù)據(jù)defclear():clearEntry()foritemindataTreeview.get_children():? ? ? ? dataTreeview.delete(item)defaddAll():foroinDataBase().allUser():? ? ? ? dataTreeview.insert('',0, values=(o[0], o[1], o[2], o[3]))#清空四個(gè)輸入框defclearEntry():sidEntry.delete(0, END)? ? snameEntry.delete(0, END)? ? sexEntry.delete(0, END)? ? sageEntry.delete(0, END)

上述是系統(tǒng)所需的具體方法!

仍然需要改進(jìn)!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容