Как связать функцию с кнопкой в ​​поле ввода, используя Python GUI? - PullRequest
0 голосов
/ 29 декабря 2018

пожалуйста, нажмите здесь, чтобы увидеть изображение. Я хочу связать свою функцию python с полем ввода. Предположим, если я добавлю функцию к кнопке в графическом интерфейсе.если я нажму на кнопку, то вывод функции должен появиться в поле ввода Python. Но я получаю вывод в оболочке Python. Помогите, пожалуйста, из этого.
выход заменяется новым, гарантировано, что мне нужно напечатать рядом. image2

**** вот код ****

from tkinter import *

root = Tk()

text_input = StringVar()

operator = ""

txtDisplay= Entry(font=('arial',70,'bold italic'),textvariable=text_input , 
                  bd=30,insertwidth=4,bg="#b0e0e6", justify = "center")

root.title("Alphabet Pattern")

txtDisplay.grid(columnspan=10)

def A():

    """This function will print alphabet A"""

    for i in range(7):

        for j in range(7):

            if ((j==0 or j==6)) and i!=0 or ((i==0 or i==3) and (j>0 and 
                                                                     j<6)):
                print("*",end="")

            else:

                print(end=" ")

        print()

    print()

def C():

    """This function will print alphabet C"""

    for row in range(7):

        for col in range(7):

            if (col==0 and (row!=0 and row!=6) or ((row==0 or row==6) and 
                                                                (col>0))):

                print("*",end="");

            else:

                print(end=" ")

        print()

    print()

#first button

A1 = Button(padx=16,pady=16,bd=8,fg="#000000",font=('arial',30,'bold 
italic'),text="A",bg="#b0e0e6e",command= A ).grid(row=3, column=0)

#second button

C1 = Button(padx=16,pady=16,bd=8,fg="#000000",font=('arial',30,'bold 
italic'),text="C",bg="#b0e0e6",command=  C).grid(row=4, column=2)

root.mainloop()

Пожалуйста, дайте мне какие-либо предложения по решению вышеуказанного кода.

1 Ответ

0 голосов
/ 29 декабря 2018

Используйте это вместо функции print :

используйте это:

var = Label(padx=32,pady=32,fg="#000000",font=('arial',30,'bold 
          italic'),text="something",bg="#b0e0e6").grid(row=4, column=2)

Это работает, но должно быть аккуратно!:)

Вы должны попробовать это:

from tkinter import *

root = Tk()

text_input = StringVar()

operator = ""

txtDisplay= Entry(font=('arial',70,'bold italic'),textvariable=text_input , 
bd=30,insertwidth=4,bg="#b0e0e6", justify = "center")

root.title("Alphabet Pattern")

txtDisplay.grid(columnspan=10)

c = ""
a = ""

def A():
    global a
    a = ""
    """This function will print alphabet A"""

    for i in range(7):

        for j in range(7):

            if ((j==0 or j==6)) and i!=0 or ((i==0 or i==3) and (j>0 and j<6)):
                a += "*"

            else:
                a += " "
        a += "\n"

    var["text"] = a

def C():
    global c
    c = ""
    """This function will print alphabet C"""

    for row in range(7):

        for col in range(7):

            if (col==0 and (row!=0 and row!=6) or ((row==0 or row==6) and 
(col>0))):
                c += "*"
            else:
                c += " "
        c += "\n"

    var["text"] = c

var = Label(root)
var.config(text="Allah",bd=0,fg="orange",width=0,height=0,bg="#000000",font= 
                                                         ("courier new",40))
var.place(relx=1,x=-500, y=250, anchor=W)

#first button

A1 = Button(padx=16,pady=16,bd=8,fg="#000000",font=('arial',30,'bold 
italic'),text="A",bg="#0f0f0f",command= A ).grid(row=3, column=0)

#second button

C1 = Button(padx=16,pady=16,bd=8,fg="#000000",font=('arial',30,'bold 
italic'),text="C",bg="#0f0f0f",command=  C).grid(row=4, column=2)

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