GTKMM - `WIDGET_REALIZED_FOR_EVENT(小部件,事件)'

发布于 2025-01-06 08:12:13 字数 496 浏览 2 评论 0原文

我们正在开发 gtkmm24 应用程序。有一个长期存在的错误,如果用户在 Gtk::TreeView 中的 Gtk::CellRendererCombo 上单击得太快,则整个应用程序将因 GTK 断言而锁定:

Gtk-CRITICAL **: IA__gtk_widget_event: assertion `WIDGET_REALIZED_FOR_EVENT (widget, event)' failed

如果您将鼠标悬停在应用程序上的任何位置,则该断言会重复。

在屏幕上,您会看到一个灰色框,其中渲染器组合应该“弹出”:

在此处输入图像描述

我的想法是该错误是由于在前一个选择试图完成渲染时选择另一行的组合渲染器而引起的。我尝试了各种延迟和阻止,以不允许用户在上一个选择被“编辑”或“取消”之前选择另一行,但无济于事。

有人有什么想法吗?

We are working on a gtkmm24 application. There's a long standing bug that if a user clicks too quickly on a Gtk::CellRendererCombo in a Gtk::TreeView the whole application locks up with a GTK Assert:

Gtk-CRITICAL **: IA__gtk_widget_event: assertion `WIDGET_REALIZED_FOR_EVENT (widget, event)' failed

This assert then repeats if you mouse anywhere over the application.

On the screen you get a gray box where the renderer combo should have "popped up":

enter image description here

My thought was that the error is caused by selecting another row's combo renderer while a previous selection was trying to finish rendering. I've attempted all sorts of delays and blocks to not allow the user to select another row before the previous selection was "edited" or "canceled" but to no avail.

Anyone got any ideas?

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

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

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文