Проблема с порядком выполнения кода tkinter - PullRequest
1 голос
/ 08 июня 2019

Мой основной скрипт работает с терминалом, который работает отлично.Я пытаюсь сделать графический интерфейс для этого, но я застрял в этой точке.Principal Terminal Version Как вы видите на экране, в начале скрипта он спрашивает, следует ли проверять базу данных.И сразу после этого сначала запрашивается платформа, прежде чем открывать капчу для проверки базы данных.Проблема происходит именно здесь, на моей версии GUI, смотрите.Gui Version Как вы видите, графический интерфейс запускается, но когда я нажимаю на кнопку проверки новой базы данных, она напрямую открывает капчу, не спрашивая платформу ... И запрашивает платформу только после того, как я решилкапча, которую я не хочу после ...

Вот основной код testkinter.py:

import tkinter as tk
from tkinter import messagebox
import commands
import CheckDatabase
import SetPlatformfile



def check_and_hide():
    CheckDatabase.db_download(root)
    checkdb.pack_forget()
    checkdb1.pack_forget()


root = tk.Tk()


checkdb = tk.Button(root, text="Check for new databases", command=check_and_hide)
checkdb.pack()


checkdb1 = tk.Button(root, text="No")
checkdb1.pack()


root.mainloop()

Вот функция set_platform, вызываемая в файле Checkdatabse:

import tkinter as tk
import config
from tkinter import messagebox



def set_platform(root):
    platform = tk.Label(root,text="'a'|Android -- 'i'|iOS: ")
    platform.pack()
    androidbutton=tk.Button(root,text="Android",command=renameplatformandroid)
    iosbutton=tk.Button(root,text="iOS",command=renameplatformios)
    androidbutton.pack()
    iosbutton.pack()


def renameplatformandroid():
    config.platform = 'android'
    print(config.platform)

def renameplatformios():
    config.platform = 'ios'
    print(config.platform)

И потому что мой файл checkdatabase действительно очень длинный, я просто помещу экран в тот самый момент, когда вызывается set_platform (он вызывается при регистрации в func, которая сама вызывается в начале db_download).Set platform called

Надеюсь, мой вопрос ясен!Дайте мне знать, если вам нужно больше деталей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...