如何在 PyGObject 中获取按钮文本?

How to get button text in PyGObject?

如何在 GTK 中打印按钮文本?

import gi
gi.require_version('Gtk','3.0')
from gi.repository import Gtk

class MainWindow(Gtk.Window):
    def __init__(self):
        Gtk.Window.__init__(self)
        self.button = Gtk.Button("Hello")
        self.button.connect('pressed',self.print_button_name)
        self.add(self.button)

    def print_button_name(self,widget):
        print(MainWindow.button.name)  # I want to print button text here

win = MainWindow()
win.show_all()
win.connect('delete-event',Gtk.main_quit)
Gtk.main()

我正在使用 python3 和 PyGObject,我想打印按钮文本。在本例中,按钮文本为 "Hello"。

我该怎么做?

您正在使用 class MainWindow 而不是实例 属性。

将回调方法更改为:

def print_button_name(self,widget):
    print(self.button.get_label())  # This will print correctly