Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何获取ttk.Entry的值并将其显示在messagebox中?_Python 3.x_Tkinter_Ttk - Fatal编程技术网

Python 3.x 如何获取ttk.Entry的值并将其显示在messagebox中?

Python 3.x 如何获取ttk.Entry的值并将其显示在messagebox中?,python-3.x,tkinter,ttk,Python 3.x,Tkinter,Ttk,我刚开始学习tkinter和python3。我正在使用pygubu来尝试制作一个非常简单的程序,它从一个输入小部件获取输入,然后按一个按钮将其显示在一个消息框中。下面是我正在使用的代码: # command_properties.py import tkinter as tk from tkinter import messagebox import pygubu # define the function callbacks def on_button1_click(): tk_me

我刚开始学习tkinter和python3。我正在使用pygubu来尝试制作一个非常简单的程序,它从一个输入小部件获取输入,然后按一个按钮将其显示在一个消息框中。下面是我正在使用的代码:

# command_properties.py
import tkinter as tk
from tkinter import messagebox
import pygubu

# define the function callbacks
def on_button1_click():
    tk_messageBox -message answer -type ok -icon info

class MyApplication(pygubu.TkApplication):

    def _create_ui(self):
        #1: Create a builder
        self.builder = builder = pygubu.Builder()

        #2: Load an ui file
        builder.add_from_file('test.ui')

        #3: Create the widget using self.master as parent
        self.mainwindow = builder.get_object('Frame_1', self.master)

        # Configure callbacks
        callbacks = {
            'on_button1_clicked': on_button1_click
        }

        builder.connect_callbacks(callbacks)


if __name__ == '__main__':
    root = tk.Tk()
    app = MyApplication(root)
    app.run()
以下是ui文件代码:
另外,请告诉我具体哪里错了。

在类内的\u按钮1\u click()上创建
,然后您可以创建

self.entry_1 = self.builder.get_object('Entry_1', self.master)
并使用

self.entry_1.get()
完整示例

import tkinter as tk
import pygubu

class MyApplication(pygubu.TkApplication):

    def _create_ui(self):
        self.builder = pygubu.Builder()

        self.builder.add_from_file('test.ui')

        mainwindow = builder.get_object('mainwindow', master)

        self.entry_1 = self.builder.get_object('Entry_1', self.master) # <- self.entry

        callbacks = {
            'on_button1_clicked': self.on_button1_click # <- self.
        }

        self.builder.connect_callbacks(callbacks)

    def on_button1_click(self): # <- self
        print(self.entry_1.get())

if __name__ == '__main__':
    root = tk.Tk()
    app = MyApplication(root)
    app.run()
将tkinter作为tk导入
进口皮古布
MyApplication类(pygubu.TkApplication):
定义创建用户界面(自我):
self.builder=pygubu.builder()
self.builder.add_from_文件('test.ui'))
mainwindow=builder.get\u对象('mainwindow',master)

self.entry_1=self.builder.get_object('entry_1',self.master)#您似乎没有尝试过实现这一点。您需要尝试在按钮1上创建
功能,然后在遇到更具体的问题时询问问题,然后“告诉我哪里错了”。此外,本网站强烈反对链接到其他网站上的代码。这可能会改变,或者网站可能会崩溃,使这个问题在将来对其他人毫无用处。我尝试了这个,但我只从我的.ui文件中得到了一个条目小部件,没有其他东西。我不知道如何使用其他元素。没有文件,它已经有4年历史了。我不使用任何RAD工具-它提供完全控制。