« Python : Tkinter » : différence entre les versions

De Justine's wiki
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 5 : Ligne 5 :


 
 


= Script 1 =
= Script 1 =


Un script qui met en oeuvre la plupart des commandes vues dans le tuto :
Un script qui met en oeuvre la plupart des commandes vues dans le tuto. Le résultat est très bizarre, mais l'important c'est que ça fonctionne :D
<div style="background:#eeeeee; border:1px solid #cccccc; padding:5px 10px">
<div style="background:#eeeeee; border:1px solid #cccccc; padding:5px 10px">
<span style="color:#cc7832">from </span>tkinter <span style="color:#cc7832">import </span>*<br/> <span style="color:#cc7832">from </span>tkinter.messagebox <span style="color:#cc7832">import </span>*
<span style="color:#cc7832">from </span>tkinter <span style="color:#cc7832">import </span>*<br/> <span style="color:#cc7832">from </span>tkinter.messagebox <span style="color:#cc7832">import </span>*


Ligne 63 : Ligne 64 :


fenetre.mainloop()
fenetre.mainloop()
</div>
</div>
Le fichier squirrel.png qui va avec:
 
[[Squirrel.png|Squirrel.png]]

Version du 21 novembre 2018 à 01:00

Python : Tkinter

  cf : http://apprendre-python.com/page-tkinter-interface-graphique-python-tutoriel

 


Script 1

Un script qui met en oeuvre la plupart des commandes vues dans le tuto. Le résultat est très bizarre, mais l'important c'est que ça fonctionne :D

from tkinter import *
from tkinter.messagebox import *

# -*- coding: latin-9 -*-

fenetre = Tk()

fenetre['bg']='white'

# frames

Frame1 = Frame(fenetre, borderwidth = 2, relief = GROOVE)
Frame1.pack(side=LEFT, padx=10, pady=30)

Frame2 = Frame(fenetre, borderwidth = 2, relief = GROOVE)
Frame2.pack(side=RIGHT, padx=10, pady=30)

Frame3 = Frame(fenetre, borderwidth = 2, relief = GROOVE)
Frame3.pack(side = BOTTOM, padx=10, pady = 30)

#ajout d'un bouton

bouton = Checkbutton(Frame1, text="Cocher si vous êtes heureux.")
bouton.pack()

#Ajout d'une liste

liste=Listbox(Frame2)
liste.insert(1, "Bière")
liste.insert(2, "Jus d'orange")
liste.insert(3, "Lait")
liste.pack()

#Ajout d'un canevas

canevas = Canvas(Frame3, width = 150, height = 120, background="pink")
cercle = canevas.create_oval(50, 100, 150, 50)
canevas.pack(side=LEFT)

#Ajout de labelframe

Labelframe = LabelFrame(fenetre, text="Quel est ton pourcentage de bonheur?", padx=20, pady=20)
Labelframe.pack(fill="both", expand="yes")

#Ajout d'une spinbox
s = Spinbox(Labelframe, text="A combien tu est mon amie?", from_=0, to_=100)
s.pack()

#Ajout d'une alerte sur un bouton

def bouh():
    if askyesno("Attention", "Cliquez ici"):
        showwarning("BOUH!")

    else:
        showinfo("Allez...", "Allez, clique!")

bouton2 = Button(fenetre, text="Clique Ici", command=bouh)
bouton2.pack()

#Ajout d'une barre de menu

def alert():
    showinfo("OUAF", "OUAF")

def miaou():
    showinfo("MIAOU", "MIAOU")

menubar = Menu(fenetre)

menu1 = Menu(menubar, tearoff=0)
menu1.add_command(label="Chien", command=alert)
menu1.add_separator()
menu1.add_command(label="Quitter", command=fenetre.quit)
menubar.add_cascade(label="Canidé", menu=menu1)

menu2 = Menu(menubar, tearoff=0)
menu2.add_command(label="Chat", command=miaou)
menubar.add_cascade(label="Félidés", menu=menu2)

fenetre.config(menu=menubar)

#Ajout d'un bouton qui change le curseur

Button(fenetre, text="croix", relief=RAISED, cursor="pirate").pack(side=LEFT)

#Ajout d'une image
photo = PhotoImage(file="squirrel.png")

canvas = Canvas(fenetre, width = 350, height = 400)
canvas.create_image(0, 0, anchor=NW, image=photo)
canvas.pack()

#Récupération d'input
def recup():
    showinfo("Alerte", entree.get())

value = StringVar()
value.set("Valeur")
entree = Entry(fenetre, textvariable=value, width=30)

bouton3 = Button(fenetre, text="Valider", command=recup)
bouton3.pack()

fenetre.mainloop()

Le fichier squirrel.png qui va avec:

Squirrel.png