1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
| from tkinter import *
#fct circuit
def circouv():
canv.delete(ALL)
flagetat=False
canv.create_line(50,200,200,200) #gene borne+
canv.create_line(100,250,150,250) #gene borne-
canv.create_line(125,200,125,100) #fil gene+
canv.create_line(125,100,250,100) #inter borne+
canv.create_oval(245,95,255,105,fill="black") #inter contact+
canv.create_line(250,125,350,100) #inter bascule
canv.create_line(350,100,450,100) #inter borne-
canv.create_oval(345,95,355,105,fill="black") #inter contact-
canv.create_line(450,100,450,150) #res borne+
canv.create_rectangle(425,150,475,250) #res
canv.create_line(450,250,450,350) #res borne-
canv.create_line(450,350,125,350) #fil
canv.create_line(125,350,125,250) #fil gene-
def circfer():
canv.delete(ALL)
flagetat=True
canv.create_line(50,200,200,200) #gene borne+
canv.create_line(100,250,150,250) #gene borne-
canv.create_line(125,200,125,100) #fil gene+
canv.create_line(125,100,250,100) #inter borne+
canv.create_oval(245,95,255,105,fill="black") #inter contact+
canv.create_line(250,100,350,100) #inter bascule
canv.create_line(350,100,450,100) #inter borne-
canv.create_oval(345,95,355,105,fill="black") #inter contact-
canv.create_line(450,100,450,150) #res borne+
canv.create_rectangle(425,150,475,250) #res
canv.create_line(450,250,450,350) #res borne-
canv.create_line(450,350,125,350) #fil
canv.create_line(125,350,125,250) #fil gene-
def sw():
"""
"""
global flagetat
if flagetat == True:
flagetat = False
circouv()
lbl1.configure(text="la tension est de: 0V")
lbl2.configure(text="le courant est de: 0A")
elif flagetat == False:
flagetat = True
circfer()
lbl1.configure(text="la tension est de: "+ent1.get())
lbl2.configure(text="le courant est de: "+str(int(ent1.get())/int(ent2.get()))+"A")
#interface
fen = Tk()
canv = Canvas(fen, height = 450, width = 600, bg="light yellow",)
canv.grid(row=0,column=0,rowspan=10)
Label(fen,text="interrupteur").grid(row=0,column=1)
but = Button(fen,text="marche/arret",command=sw)
but.grid(row=0, column=2)
Label(fen,text="générateur").grid(row=1,column=1)
ent1 = Entry(fen)
ent1.grid(row=1,column=2)
ent1.bind("<Return>",sw)
Label(fen,text="resistance").grid(row=2,column=1)
ent2 = Entry(fen)
ent2.grid(row=2,column=2)
ent2.bind("<Return>",sw)
lbl1 = Label(fen)
lbl1.grid(row=4,column=2)
lbl2 = Label(fen)
lbl2.grid(row=5,column=2)
#main
flagetat = False
circouv()
fen.mainloop() |
Partager