Открытие окна tkinter в зависимости от операторов if - PullRequest
0 голосов
/ 06 августа 2020

Я пытаюсь открыть окно программы после ввода нескольких параметров и нажатия кнопки «продолжить».

Приведенный ниже код - это оператор if, чтобы просмотреть параметры, и если при нажатии правильной последовательности откроется окно, я сделал, но файл не открывается. Я не уверен, что это где-то рядом с правильным кодом, но ошибок нет и файл не открывался). Я пытаюсь открыть файл, чтобы его можно было использовать, то есть: новый экран tkinter, с которым вы можете взаимодействовать.

if price == 'one':
    if periph == 'one':
        if Lights == 'one':
            exec(open('C:\\Tkinter\\CBG_Save_Prebuild_Screen.py'))

Ответы [ 2 ]

0 голосов
/ 06 августа 2020

Для вашей конкретной c проблемы вы можете попробовать это

if price == 'one':
    if periph == 'one':
        if Lights == 'one':
              import CBG_Save_Prebuild_Screen.py
#if both your.py file are in same folder

Вы также можете сделать это с помощью os.startfile()

Метод os.startfile() позволяет нам start a файл с соответствующей программой. Другими словами, мы можем открыть файл с помощью связанной с ним программы, как если бы вы дважды щелкнули PDF-файл, и он откроется в Adobe Reader.

import os
if price == 'one':
    if periph == 'one':
        if Lights == 'one':     
                  
              path='C:\\Tkinter\\CBG_Save_Prebuild_Screen.py'
              os.startfile(path)

Думаю, это может вам

0 голосов
/ 06 августа 2020

1. Метод Вы можете просто импортировать CBG_Save_Prebuild_Screen.py вот так

import CBG_Save_Prebuild_Screen 

или

import .CBG_Save_Prebuild_Screen

или

from .CBG_Save_Prebuild_Screen import *

EDIT

Если вы используете OOP для tkinter, вы можете просто добавить {Your tkinter class} в

if __name__ == "__main__":

, но если вы не используете OOP, вы можете просто вставить свой виджет в def в CBG_Save_Prebuild_Screen.py а затем вызовите свой виджет в операторе if

2. Метод Вы можете просто запустить файл, например:

import os               

os.system("python CBG_Save_Prebuild_Screen.py") #For python 2         
os.system("python3 CBG_Save_Prebuild_Screen.py") #For python 3

Удачного кодирования!

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