python-3.x - GTK+ 中的 GObject 覆盖信号
问题描述
我想我会尝试更新我在网上找到的程序(PyGTK 中的信号和事件),说明如何覆盖子类中的信号。这是我的版本:
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, GObject
class PyApp(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self)
self.set_size_request(200, 150)
self.set_position(Gtk.WindowPosition.CENTER)
self.show_all()
self.connect("destroy", Gtk.main_quit)
@GObject.SignalOverride
def configure_event(self, *args):
pass
def do_configure_event(self, event):
title = "%s, %s" % (event.x, event.y)
self.set_title(title)
Gtk.Window.do_configure_event(self, event)
PyApp()
Gtk.main()
我明白了
TypeError:参数事件:预期 Gdk.EventConfigure,但得到了 gi.overrides.Gdk.Event
从调用 super 的 do_configure_event 的行开始。知道我做错了什么吗?我正在使用 PyGObject 3.29.2.dev0 和 Python 3.7.0。
解决方案
推荐阅读
- python - python 错误使用 amazon ses 和 aws lambda 发送邮件
- javascript - React 绑定到 reactDOM 之外的 HTML 元素
- haskell - 无需通过 Template Haskell 将函数转换为预先计算的查找表
- javascript - 比较angularjs中的角度副本和更改的数据并仅发送更改的项目
- python - Python3:如何比较两个嵌套和动态的字典的数据?
- azure - 如何通过 Azure ARM 模板部署引用不在 VM/App 网关资源组中的另一个 Vnet 的 VM/App 网关
- java - calendar.getDisplayName 返回错误的日期
- python - 估计图像的信噪比
- python - 使用正则表达式排序
- python - 悲情:泡菜失败