Откройте файл .py в Tkinter и введите пользовательский ввод через GUI - PullRequest
0 голосов
/ 02 мая 2020

Я написал фрагмент кода, который имеет пользовательский ввод, следующим образом:

var1 = input("Enter input here: ") 

, которые сохраняются в коде для подсказки некоторых действий. Я хотел бы вызвать этот фрагмент кода, используя отдельный фрагмент кода Tkinter.

Проблема в том, что мой код Tkinter действительно вызывает другой входной код, но входное значение уже заполнено как «Нет». Как я могу получить свой код Tkinter, чтобы он мог вводить ввод при использовании отдельного фрагмента кода?

Ниже приведен код Tkinter:

my Tkinter code is below:

import sys
import os
from tkinter import *
from subprocess import *

root = Tk()

def import_print():
        proc = Popen('python testinput.py', stdout=PIPE, shell=TRUE)
        proc = proc.communicate()
        textbox.insert(END, proc)

def enter_stuff():
    print(E1.get())

textbox = Text(root)
textbox.pack()


B=Button(root,text="Press to Start",command=import_print)
B.pack()

B2=Button(root,text="Enter",command=enter_stuff)
B2.pack()

E1 = Entry(root)
E1.pack()


root.mainloop()

«Оригинальный» код, который Я звоню в Tkinter:

var1 = input("Enter User Input: ")

var1 = var1 * 5

print (var1)

1 Ответ

0 голосов
/ 02 мая 2020

По сути, input и tkinter - это два разных механизма для создания интерактивных программ.

Они не смешиваются.

Функция input требует, чтобы Python выполнялась из оболочки, в то время как tkinter программы создают свое собственное окно.

Кроме того, скрипты Python, работающие в терминале, обычно имеют линейный поток управления. GUI такие программы, как tkinter, выполняются с непрерывной обработкой событий l oop.

Проще говоря, вы должны написать свою программу для использования либо tkinter или input.

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