python tk模块 小作业
生活随笔
收集整理的這篇文章主要介紹了
python tk模块 小作业
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
import tkinter as tk
import tkinter.messagebox
window=tk.Tk()
window.title('簡單控制系統')
window.geometry('800x450')canvas=tk.Canvas(window,height=100,width=150)
image_file=tk.PhotoImage(file='ins2.gif')
image=canvas.create_image(500,400,anchor='nw',image=image_file)
canvas.pack(side='bottom')L=tk.Label(window,bg='yellow',width=40,height=2,text='默認東西車流量為南北車流量一半')
#標題
L.pack()# PART1:Radiobutton,確定信號時長
tk.Label(window,bg='red',width=20,height=1,text='信號周期 秒').place(x=25,y=50,width=150)
var1=tk.StringVar()
l1=tk.Label(window,bg='white',width=15,text='請選擇')
l1.place(x=180,y=50)
def print_selection():l1.config(text='你選擇了'+var1.get()+'s')
a1=120
a2=100
a3=80
r1=tk.Radiobutton(window,text='120s',variable=var1,value=str(a1),command=print_selection).place(x=180,y=75)
r2=tk.Radiobutton(window,text='100s',variable=var1,value=str(a2),command=print_selection).place(x=180,y=100)
r3=tk.Radiobutton(window,text='80s',variable=var1,value=str(a3),command=print_selection).place(x=180,y=125)#結束#PART2:
tk.Label(window,bg='red',width=20,height=1,text='南北方向車流量 輛/小時').place(x=25,y=150,width=150)
var2=tk.StringVar()
l2=tk.Label(window,bg='white',width=15,height=1,text='waiting')
l2.place(x=180,y=150)
def print_selection(v1):l2.config(text='你選擇了'+v1)global k1k1=int(v1)
s1=tk.Scale(window,label='滑動拖塊確定取值',from_=400,to=1200,orient=tk.HORIZONTAL,length=300,showvalue=0,tickinterval=100,resolution=100,command=print_selection).place(x=180,y=175)
#Scale組件#
tk.Label(window,bg='red',width=20,height=1,text='南北方向轉彎比例 %').place(x=25,y=250,width=150)
var3=tk.StringVar()
l3=tk.Label(window,bg='white',width=15,height=1,text='觀測估計值')
l3.place(x=180,y=250)
def print_selection(v2):global k2k2=int(v2)l3.config(text='你選擇了'+v2+'%')s2=tk.Scale(window,label='滑動拖塊確定百分比',from_=10,to=50,orient=tk.HORIZONTAL,length=300,showvalue=0,tickinterval=10,resolution=10,command=print_selection).place(x=180,y=275)
#確定轉彎車輛參數#背景
l4=tk.Label(window,bg='green',width=100,height=4,text='計算公式:直行車輛數=3600x[(綠燈時間-反應時間)/間隔時間+1]x通行系數/信號周期',font=('Arial',12)).place(x=0,y=350)l5=tk.Label(window,bg='red',width=30,height=8,text='',font=('Arial',12))
l5.place(x=520,y=60)def jump_info():l5.config(text='通行規則:\n''南北方向先亮直行綠燈,其余紅燈;\n''然后亮左轉綠燈,其余紅燈;\n''然后東西方向亮直行綠燈,其余紅燈\n')m=int(str(var1.get()))#總信號周期mm1=m*2/3#南北方向信號周期m1m=int(m)m1=int(m1)s=k1*m1s=s/(0.9*3600)s=s-1s=s*2.5+2.3#s表示未保留有效數字的值a=int(s)# ((k1*m1/(0.9*3600))-1)*2.5+2.3) b = k2*m1/100 a1 = int(a * m1 / (a + b))#南北直行綠燈時間b1 = int(b * m1/ (a + b))# 南北轉彎時間c=int(m1/2) #東西向綠燈時間tk.messagebox.showinfo(title='點擊確認',message='南北綠燈{0}s,\n 南北轉向{1}s,\n 東西直行{2}s'.format(a1,b1,c))B=tk.Button(window,text='點擊確認',width=20,height=5,bg='grey',command=jump_info)
B.place(x=590,y=240)window.mainloop()
總結
以上是生活随笔為你收集整理的python tk模块 小作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python + Paramiko实现s
- 下一篇: websocket python爬虫_p