Erstellen Sie für Python eine Benutzeroberfläche mit tkinter, die standardmäßig enthalten ist. Empfangen Sie Aktionen auf dem Operationsbildschirm und verbinden Sie sie mit der Verarbeitung Ich möchte die Hyperparameter des tiefen Lernens selektiv machen, damit auch Leute, die nicht damit vertraut sind, damit spielen können.
import tkinter
root = tkinter.Tk()
root.title("Nimm es")
root.resizable(False, False)
root.geometry("400x200")
#Ich werde hier hinzufügen
root.mainloop()
Das Fenster wird gestartet.
Betreiben Sie die Größe mit und ohne Größe Passen Sie die Zeichnungsgröße an die Geometrie an Führen Sie den als root festgelegten Inhalt in der Hauptschleife aus
Auf dieser Grundlage werden wir Gacha Gacha hinzufügen
label = tkinter.Label(root, text="Etikette", 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="Taste", variabl=cval, command = check)
cbtn.pack()
root.mainloop()
Zunächst mit BooleanVar in den ungeprüften Zustand versetzt Sie können überprüfen, ob es mit get () aktiviert ist. Wenn Sie beim Drücken der Taste eine beliebige Funktion verschieben möchten, geben Sie die Funktion mit dem Befehl an
Mit diesem Code werden jedes Mal Ja und Nein zurückgegeben, wenn ich ihn in der Befehlszeile oder auf dem Notizbuch überprüfe.
import tkinter
import tkinter.font
def click_btn():
button["text"] = "Ich klickte"
root = tkinter.Tk()
root.title("title")
root.geometry("400x200")
button = tkinter.Button(root, text="Taste", font=("Times New Roman", 24), command=click_btn)
button.place(x=100,y=100)
root.mainloop()
Platzierung der Druckknöpfe mit dem Knopf Definieren Sie eine Funktion, um einen Wert in das Textargument in der Schaltfläche einzufügen Schriftart kann auch angegeben werden
Wenn Sie die Schriftarten überprüfen möchten, die angegeben werden können,
import tkinter.font
root = tkinter.Tk()
tkinter.font.families()
import tkinter
import random
def click_btn():
label["text"] = random.choice(["Guten Morgen","Hallo","Guten Abend"])
label.update()
root = tkinter.Tk()
root.title("title")
root.geometry("400x200")
root.resizable(False, False)
label = tkinter.Label(root, text="Drücken Sie, um hier anzuzeigen", font=("Times New Roman", 15), bg = "white")
label.place(x=10, y=10)
button = tkinter.Button(root, text="Druckknopf", font=("Times New Roman", 15),command = click_btn, fg = "skyblue")
button.place(x = 50, y = 50)
root.mainloop()
"Zum Anzeigen hier drücken" ist auf dem Etikett enthalten. Ich möchte eine Funktion ausführen, die das Textargument durch Drücken der Schaltfläche aktualisiert. Geben Sie es daher als Befehl an und lassen Sie es ausführen
import tkinter
import tkinter.messagebox
def click_btn():
tkinter.messagebox.showinfo("Ein weiteres Fenster", "Inhalt anzeigen")
root = tkinter.Tk()
root.title("Nimm es")
root.resizable(False, False)
root.geometry("400x200")
button = tkinter.Button(root, text="Taste", 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="Nehmen Sie auf, was Sie als Namen der Schaltfläche geschrieben haben", font=("Times New Roman", 15),command = click_btn)
button.place(x = 20, y = 100)
root.mainloop()
Der Eingaberahmen kann mit Entry installiert werden Mehrere Zeilen haben unterschiedliche Funktionen Da der in Eintrag eingegebene Inhalt mit der Funktion get erfasst werden kann, wird er nach der Erfassung in der Schaltflächenanzeige angezeigt.
import tkinter
import tkinter.font
from PIL import ImageTk, Image
root = tkinter.Tk()
root.title("title")
root.geometry("600x500")
image = Image.open("Avocado.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()
Erstellen Sie einen Zeichenbereich mit der angegebenen Größe in der Mitte des Fensters Geben Sie die Position von create_image mit dem oberen linken Rand des Zeichenbereichs als 0,0 an Die Bildmitte wird angegeben
Zeichnen Sie mit FigureCanvasTkAgg vom Matplot zum tkinter In der richtigen Reihenfolge angezeigt
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()
Verwenden Sie KeyPress usw., um Tastaturoperationen zu empfangen Ich werde auch versuchen, den Inhalt der Tastaturbedienung zu erhalten
Geben Sie die Bildposition an, indem Sie dem zu verschiebenden Bild ein Tag hinzufügen Die After-Funktion spiegelt die am Ende angegebene Funktion wider, während eine Verzögerung von 1000 = 1 Sekunde verwendet wird.
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("Avocado.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("Mauseingabe")
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()
Ich denke, dass Sie den Eingabeinhalt durch Kombinieren mit Schaltfläche und Eingabe zeichnen und die Funktion im Paket mithilfe des Befehls abrufen können.
[Spieleentwicklung mit 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