从另一个函数 A 关闭 Tkinter GUI 并将 Tkinter 变量传递给函数 A

迪克

这个问题是关于在 Python 2.7.x 中编程的

我想编写一个程序,其中存在两个函数:一个是从用户那里获取输入的方法,另一个是显示输入。两者都应该在 GUI 中完成。我们将第一个函数称为 GET TEXT 函数,将第二个函数称为 SHOW TEXT 函数;我的策略是打开一个 GUI,显示一个文本框,然后放一个按钮去显示文本功能。然后,SHOW TEXT函数的第一行就是关闭GET TEXT函数打开的窗口,获取输入文本的值,并在另一个GUI中打印出来。

所以,我尝试这样做,

from Tkinter import *
import tkMessageBox

def texttobeenteredhere():
    application = Tk()
    textbox = Text(application)
    textbox.pack()

    submitbutton = Button(application, text="OK", command=showinputtext)
    submitbutton.pack()
    application.mainloop()

def showinputtext():
    application.quit()
    thetext = textbox.get()
    print "You typed", thetext

texttobeenteredhere()

我有一些我无法理解的错误,但我希望你能理解我的想法,尽管我的解释可能非常糟糕。请为我的问题提出一个解决方案,其中 GET TEXT 函数和 SHOW TEXT 函数必须分别存在于代码中。

编辑:感谢 Josselin 在 python 中引入语法类。其实我想说的是,我想让程序打开一个窗口来获取用户的输入,然后关闭窗口,最后再打开另一个窗口来显示输入的文本。老实说,我对此很陌生,但通过我的先验知识和猜测,我尝试修改代码以满足我的期望。

import Tkinter as tk
global passtext
class application(tk.Tk):
    def __init__(self):
        tk.Tk.__init__(self)
        self.textbox = tk.Text(self)
        self.textbox.pack()
        self.submitbutton = tk.Button(self, text="OK", command=self.showinputtext)
        self.submitbutton.pack()
        self.mainloop()

    def showinputtext(self):
        self.thetext = self.textbox.get("1.0", "end-1c")
        print "You typed:", self.thetext
        self.destroy()

class showtext(tk.Tk):
    def __init__(self):
        tk.Tk.__init__(self)
        self.setthetext = tk.StringVar()
        self.setthetext.set(passtext)
        self.showthetext = tk.Label(self, textvariable=self.setthetext)
        self.showthetext.pack()
        self.submitbutton = tk.Button(self, text="OK", command=self.destroy)
        self.submitbutton.pack()
        self.mainloop()

# Launch the GUI
app = application()
# Access the entered text after closing the GUI
passtext = app.thetext
text = showtext()

我的英语有时会听不懂,但这个问题得到了回答。非常感谢你。

约瑟兰

您的代码中有两个主要问题:

  • 首先,在您的showinputtext函数中,您想要访问 GUI 的元素,但它们未在函数范围内定义。
  • 其次,在读取tk.Text小部件的内容时,该.get()方法采用 2 个参数(请参阅此链接)。

要解决第一个问题,最好将您的应用程序定义为一个类,内部函数将类实例self作为输入参数,以便可以在该函数内调用应用程序小部件。

代码:

import Tkinter as tk

class application(tk.Tk):
    def __init__(self):
        tk.Tk.__init__(self)
        self.textbox = tk.Text(self)
        self.textbox.pack()
        self.submitbutton = tk.Button(self, text="OK", command=self.showinputtext)
        self.submitbutton.pack()
        self.mainloop()

    def showinputtext(self):
        self.thetext = self.textbox.get("1.0", "end-1c")
        print "You typed:", self.thetext
        self.destroy()

# Launch the GUI
app = application()

# Access the entered text after closing the GUI
print "you entered:", app.thetext

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用tkinter将输入字符串传递给另一个函数

来自分类Dev

Tkinter - 在 GUI 中更新时循环一个函数

来自分类Dev

Python - Tkinter - 如何从下拉选项中获取值并传递给另一个函数

来自分类Dev

如何将在tkinter的输入框中输入的文本从一个函数传递给另一个函数?

来自分类Dev

Python和Tkinter,将列表信息从一个函数传递到另一个函数

来自分类Dev

在Tkinter的另一个函数中使用条目/按钮中的变量

来自分类Dev

Python Tkinter-如何从一个函数到另一个函数使用值?

来自分类Dev

Python Tkinter-如何从一个函数到另一个函数使用值?

来自分类Dev

Tkinter Gui 链接按钮到 .py 文件以打开另一个 Gui

来自分类Dev

在tkinter GUI上使用matplotlib的ginput函数

来自分类Dev

在另一个模块中调用时,tkinter combobox函数不起作用

来自分类Dev

来自另一个类的Tkinter多处理和调用函数

来自分类Dev

tkinter-将事件传递给函数

来自分类Dev

使用组合框选择一个字符串并将其存储在Tkinter窗口关闭后要使用的变量中

来自分类Dev

C ++-将数组返回主函数并将数组传递给另一个函数

来自分类Dev

仅关闭一个tkinter窗口

来自分类Dev

从 tkinter GUI 中的另一个脚本导入类

来自分类Dev

tkinter gui 已关闭但控制台未关闭

来自分类Dev

如何循环并显示具有 onClick 的按钮并将不同的变量传递给另一个函数?

来自分类Dev

从一个函数获取值并将其传递给另一个函数

来自分类Dev

Tkinter,变量和函数

来自分类Dev

在Tkinter中使用事件时,如何将其他变量传递给事件函数?

来自分类Dev

从一个类到另一个tkinter使用变量

来自分类Dev

如果我在一个函数中创建了小部件,如何使用Python Tkinter在另一个函数中访问它们?

来自分类Dev

如何选择一个目录并将其存储到 tkinter 中的变量中?

来自分类Dev

如何在tkinter中使用python 3.5的滚动条打开和关闭另一个窗口?

来自分类Dev

当鼠标悬停在另一个按钮上时,为什么调用在tkinter中绑定到一个按钮的函数?

来自分类Dev

Python-GUI(TKinter),从其他函数获取变量,而无需运行整个函数agan

来自分类Dev

Python Tkinter:传递列表参数以填充另一个列表

Related 相关文章

  1. 1

    使用tkinter将输入字符串传递给另一个函数

  2. 2

    Tkinter - 在 GUI 中更新时循环一个函数

  3. 3

    Python - Tkinter - 如何从下拉选项中获取值并传递给另一个函数

  4. 4

    如何将在tkinter的输入框中输入的文本从一个函数传递给另一个函数?

  5. 5

    Python和Tkinter,将列表信息从一个函数传递到另一个函数

  6. 6

    在Tkinter的另一个函数中使用条目/按钮中的变量

  7. 7

    Python Tkinter-如何从一个函数到另一个函数使用值?

  8. 8

    Python Tkinter-如何从一个函数到另一个函数使用值?

  9. 9

    Tkinter Gui 链接按钮到 .py 文件以打开另一个 Gui

  10. 10

    在tkinter GUI上使用matplotlib的ginput函数

  11. 11

    在另一个模块中调用时,tkinter combobox函数不起作用

  12. 12

    来自另一个类的Tkinter多处理和调用函数

  13. 13

    tkinter-将事件传递给函数

  14. 14

    使用组合框选择一个字符串并将其存储在Tkinter窗口关闭后要使用的变量中

  15. 15

    C ++-将数组返回主函数并将数组传递给另一个函数

  16. 16

    仅关闭一个tkinter窗口

  17. 17

    从 tkinter GUI 中的另一个脚本导入类

  18. 18

    tkinter gui 已关闭但控制台未关闭

  19. 19

    如何循环并显示具有 onClick 的按钮并将不同的变量传递给另一个函数?

  20. 20

    从一个函数获取值并将其传递给另一个函数

  21. 21

    Tkinter,变量和函数

  22. 22

    在Tkinter中使用事件时,如何将其他变量传递给事件函数?

  23. 23

    从一个类到另一个tkinter使用变量

  24. 24

    如果我在一个函数中创建了小部件,如何使用Python Tkinter在另一个函数中访问它们?

  25. 25

    如何选择一个目录并将其存储到 tkinter 中的变量中?

  26. 26

    如何在tkinter中使用python 3.5的滚动条打开和关闭另一个窗口?

  27. 27

    当鼠标悬停在另一个按钮上时,为什么调用在tkinter中绑定到一个按钮的函数?

  28. 28

    Python-GUI(TKinter),从其他函数获取变量,而无需运行整个函数agan

  29. 29

    Python Tkinter:传递列表参数以填充另一个列表

热门标签

归档