实现自定义 Gtkmm 小部件:我应该在虚拟 on_* 函数中返回什么?

发布于 2024-12-28 19:05:37 字数 155 浏览 2 评论 0原文

覆盖 时我应该返回什么 Gtk::Widget 的 virtual bool Gtk::Widget::on_draw(const Cairo::RefPtr& cr)?文档根本没有提到这一点。

What should I return when overriding
virtual bool Gtk::Widget::on_draw(const Cairo::RefPtr<Cairo::Context>& cr)
of Gtk::Widget? The documentation doesn't say anything about that at all.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

橪书 2025-01-04 19:05:37

事实上,C 文档也没有说什么。您应该在 bugzilla.gnome.org 上将此疏忽报告为错误。

或许和GTK中的其他事件信号一样?也就是说,返回 TRUE 来停止调用其他处理程序,返回 FALSE 来进一步传播事件?尽管它不是一个事件信号,但它在 GTK 2 中的前身是,也许是为了向后兼容?例如,快速浏览一下 GtkButton 的源代码,就会发现它只是返回 FALSE

Indeed, the C documentation doesn't say anything either. You should report this oversight as a bug on bugzilla.gnome.org.

Perhaps it is the same as other event signals in GTK? That is, return TRUE to stop other handlers being invoked, FALSE to propagate the event further? Even though it's not an event signal, its predecessor in GTK 2 was, perhaps it's for backwards compatibility? A quick glance at the source code of GtkButton, for example, shows that it simply returns FALSE.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文