Я пытаюсь создать GUI с помощью Tkinter, который позволяет вам вводить URL-адрес или идентификатор.
Пример URL: https://www.fanfiction.net/s/10030860/1/The-Final-Battle Пример ID: 10030860
Как видите, ID встроен в URL. Я хочу иметь две записи: одну для ввода URL-адреса, а другую - для ввода идентификатора. Если пользователь заполняет поле URL-адреса, идентификатор создается автоматически. (Если я помещу пример URL-адреса в поле ввода URL-адреса, я хочу, чтобы идентификатор примера в поле идентификатора был автоматически сгенерирован, и наоборот) Если пользователь заполняет поле идентификатора, URL-адрес создается автоматически.
Подробнее примеры: (Скобки претендуют на поля ввода)
URL: [https://www.fanfiction.net/s/10030860/1/The-Final-Battle] <-- If I fill this in
ID: [10030860] <-- Python fills this in for me
URL: [https://www.fanfiction.net/s/10030860/1/The-Final-Battle] <-- Python fills this in for me
ID: [10030860] <-- If I fill this in
Вот мой код:
import tkinter as tk
from tkinter import ttk
# Define a function to autofill in the URL and ID entries
def autofill_id_url():
fanfic_url.set("https://www.fanfiction.net/s/" + fanfic_id.get() + "/1/")
root.after(100, autofill_id_url)
# Root window
root = tk.Tk()
# Define the labeled frame where we input stuff
input_frame = tk.LabelFrame(master=root, text="Input")
input_frame.grid(row=0, column=0, padx=1, pady=1, rowspan=2, sticky=tk.NS)
# Label for entering URL
ttk.Label(master=input_frame, text="URL:").grid(row=0, column=0, padx=1, pady=1)
# Entry field for URL
fanfic_url = tk.StringVar()
url_entry = ttk.Entry(master=input_frame, textvariable=fanfic_url)
url_entry.grid(row=0, column=1, padx=1, pady=1)
# Label for entering ID
ttk.Label(master=input_frame, text="ID:").grid(row=1, column=0, padx=1, pady=1)
# Entry field for ID
fanfic_id = tk.StringVar()
id_entry = ttk.Entry(master=input_frame, textvariable=fanfic_id)
id_entry.grid(row=1, column=1, padx=1, pady=1)
# Start callback functions
autofill_id_url()
# Start GUI event loop
root.mainloop()
У меня есть часть, когда вы вводите идентификатор, URL-адрес создается автоматически. Но я не знаю не знаю как это сделать, когда вы заполняете поле URL, вы получаете заполненное поле идентификатора.
Заранее спасибо.