Pour python, créez une interface utilisateur à l'aide de tkinter, qui est inclus par défaut. Recevez des actions sur l'écran de fonctionnement et connectez-les au traitement Je veux rendre sélectifs les hyper paramètres de l'apprentissage profond afin que même les personnes qui ne le connaissent pas puissent jouer avec.
import tkinter
root = tkinter.Tk()
root.title("Prends-le")
root.resizable(False, False)
root.geometry("400x200")
#Je vais ajouter ici
root.mainloop()
La fenêtre sera lancée.
Utilisez redimensionnable et non redimensionnable avec redimensionnable Ajuster la taille du dessin avec la géométrie Exécuter le contenu défini en tant que racine dans la boucle principale
Sur cette base, nous ajouterons Gacha Gacha
label = tkinter.Label(root, text="étiquette", font=("System",24))
label.place(x=200, y=100)
import tkinter
def check():
if cval.get() == True:
print("yes")
else:
print("no")
root = tkinter.Tk()
root.geometry("400x200")
cval = tkinter.BooleanVar()
cval.set(False)
cbtn = tkinter.Checkbutton(text="bouton", variabl=cval, command = check)
cbtn.pack()
root.mainloop()
Initialement défini sur l'état non vérifié avec BooleanVar Vous pouvez vérifier si elle est cochée avec get (). Si vous souhaitez déplacer une fonction arbitraire lorsque vous appuyez sur le bouton, spécifiez la fonction avec la commande
Avec ce code, oui et non sont renvoyés chaque fois que je le vérifie sur la ligne de commande ou sur le notebook.
import tkinter
import tkinter.font
def click_btn():
button["text"] = "J'ai cliqué"
root = tkinter.Tk()
root.title("title")
root.geometry("400x200")
button = tkinter.Button(root, text="bouton", font=("Times New Roman", 24), command=click_btn)
button.place(x=100,y=100)
root.mainloop()
Placement des boutons poussoirs avec Button Définir une fonction pour mettre une valeur dans l'argument de texte dans le bouton la police peut également être spécifiée
Si vous souhaitez vérifier les polices qui peuvent être spécifiées,
import tkinter.font
root = tkinter.Tk()
tkinter.font.families()
import tkinter
import random
def click_btn():
label["text"] = random.choice(["Bonjour","Bonjour","Bonsoir"])
label.update()
root = tkinter.Tk()
root.title("title")
root.geometry("400x200")
root.resizable(False, False)
label = tkinter.Label(root, text="Appuyez pour afficher ici", font=("Times New Roman", 15), bg = "white")
label.place(x=10, y=10)
button = tkinter.Button(root, text="bouton poussoir", font=("Times New Roman", 15),command = click_btn, fg = "skyblue")
button.place(x = 50, y = 50)
root.mainloop()
"Appuyez pour afficher ici" est inclus dans l'étiquette. Je veux exécuter une fonction qui met à jour l'argument de texte en appuyant sur le bouton, alors spécifiez-le comme commande et faites-le exécuter
import tkinter
import tkinter.messagebox
def click_btn():
tkinter.messagebox.showinfo("Une autre fenêtre", "Afficher le contenu")
root = tkinter.Tk()
root.title("Prends-le")
root.resizable(False, False)
root.geometry("400x200")
button = tkinter.Button(root, text="bouton", font=("Times New Roman", 24), command=click_btn)
button.place(x=100,y=100)
root.mainloop()
import tkinter
def click_btn():
txt = entry.get()
button["text"] = txt
root = tkinter.Tk()
root.resizable(False, False)
root.geometry("400x200")
entry = tkinter.Entry(width=20)
entry.place(x=20,y=20)
button = tkinter.Button(root, text="Imprégnez-vous de ce que vous avez écrit comme nom du bouton", font=("Times New Roman", 15),command = click_btn)
button.place(x = 20, y = 100)
root.mainloop()
Le cadre d'entrée peut être installé avec Entry Plusieurs lignes ont des fonctions différentes Étant donné que le contenu entré dans Entry peut être acquis avec la fonction get, il sera reflété dans l'affichage des boutons après l'acquisition.
import tkinter
import tkinter.font
from PIL import ImageTk, Image
root = tkinter.Tk()
root.title("title")
root.geometry("600x500")
image = Image.open("Avocat.png ")
canvas = tkinter.Canvas(root, width=500, height=400, bg="black")
canvas.pack()
photo = ImageTk.PhotoImage(image, master=root)
canvas.create_image(100, 100, image=photo)
root.mainloop()
Créer une zone de dessin de la taille spécifiée à partir du centre de la fenêtre Spécifiez la position de create_image avec le coin supérieur gauche de la zone de dessin comme 0,0 Le centre de l'image est spécifié
Dessinez de matplot à tkinter en utilisant FigureCanvasTkAgg Affiché dans l'ordre
import tkinter as tk
from pandas import DataFrame
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
root= tk.Tk()
root.geometry("1500x500")
figure1 = plt.Figure(figsize=(5,5), dpi=100)
ax1 = figure1.add_subplot(1,1,1)
bar1 = FigureCanvasTkAgg(figure1, root)
bar1.get_tk_widget().pack(side=tk.LEFT, fill=tk.BOTH)
df1 = df.groupby('target').sum()
df1.plot(kind='bar', legend=True, ax=ax1)
ax1.set_xticklabels(labels=df1.index,rotation=45)
ax1.set_title('fig1 title')
figure2 = plt.Figure(figsize=(5,5), dpi=100)
ax2 = figure2.add_subplot(1,1,1)
line2 = FigureCanvasTkAgg(figure2, root)
line2.get_tk_widget().pack(side=tk.LEFT, fill=tk.BOTH)
df2 = df.groupby('target').sum()
df2.plot(kind='line', legend=True, ax=ax2, color='r',marker='o', fontsize=10)
ax2.set_title('fig2 title')
figure3 = plt.Figure(figsize=(5,5), dpi=100)
ax3 = figure3.add_subplot(1,1,1)
ax3.scatter(df['sepal length (cm)'],df['petal length (cm)'], color = 'g')
scatter3 = FigureCanvasTkAgg(figure3, root)
scatter3.get_tk_widget().pack(side=tk.LEFT, fill=tk.BOTH)
ax3.set_ylabel('xlab')
ax3.set_xlabel('xlab')
ax3.set_title('fig3 title')
root.mainloop()
Utilisez KeyPress etc. pour recevoir les opérations du clavier J'essaierai également d'obtenir le contenu du fonctionnement du clavier
Spécifiez la position de l'image en attachant une étiquette à l'image que vous souhaitez déplacer La fonction after reflète la fonction spécifiée à la fin en utilisant un délai de 1000 = 1 seconde.
import tkinter
from PIL import ImageTk, Image
key = ""
def key_down(e):
global key
key = e.keysym
label["text"] = ("your key log = "+ key)
def key_up(e):
global key
key = ""
cx = 400
cy = 300
def main_proc():
global cx, cy
if key == "Up":
cy = cy -20
if key == "Down":
cy = cy + 20
if key == "Left":
cx = cx - 20
if key =="Right":
cx = cx + 20
canvas.coords("MYpicture", cx,cy)
root.after(100, main_proc)
log=""
def puss(e):
global log
log = e.keysym
root = tkinter.Tk()
root.bind("<KeyPress>", key_down)
root.bind("<KeyRelease>", key_up)
canvas = tkinter.Canvas(width=800, height=600,bg="lightgreen")
canvas.pack()
image = Image.open("Avocat.png ")
photo = ImageTk.PhotoImage(image, master=root)
canvas.create_image(cx, cy, image=photo, tag="MYpicture")
label = tkinter.Label(font=("System",24))
label.pack()
main_proc()
root.mainloop()
import tkinter
mouse_x = 0
mouse_y = 0
mouse_c = 0
def mouse_move(e):
global mouse_x, mouse_y
mouse_x = e.x
mouse_y = e.y
def mouse_press(e):
global mouse_c
mouse_c = 1
def mouse_release(e):
global mouse_c
mouse_c = 0
def game_main():
fnt = ("Times New Roman", 30)
txt = "mouse({},{}){}".format(mouse_x, mouse_y, mouse_c)
cvs.delete("TEST")
cvs.create_text(456, 384, text=txt, fill="black", font=fnt, tag="TEST")
root.after(100, game_main)
root = tkinter.Tk()
root.title("Entrée souris")
root.resizable(False, False)
root.bind("<Motion>", mouse_move)
root.bind("<ButtonPress>", mouse_press)
root.bind("<ButtonRelease>", mouse_release)
cvs = tkinter.Canvas(root, width=912, height=768)
cvs.pack()
game_main()
root.mainloop()
Je pense que vous pouvez dessiner le contenu d'entrée en combinant avec le bouton et l'entrée, et vous pouvez extraire la fonction dans le package en utilisant la commande.
[Développement de jeu réalisé avec Python](https://www.amazon.co.jp/Python%E3%81%A7%E3%81%A4%E3%81%8F%E3%82%8B-%E3%82 % B2% E3% 83% BC% E3% 83% A0% E9% 96% 8B% E7% 99% BA-% E5% 85% A5% E9% 96% 80% E8% AC% 9B% E5% BA% A7-% E5% BB% A3% E7% 80% AC-% E8% B1% AA / dp / 4800712394)
Recommended Posts