如何在 GTK3 中禁用按钮

Posted

技术标签:

【中文标题】如何在 GTK3 中禁用按钮【英文标题】:How to disable buttons in GTK3 【发布时间】:2015-01-21 19:30:59 【问题描述】:

Windows API 有一个名为 EnableWindow 的函数,该函数禁用控件,因此用户无法再与它们交互。

是否有 GTK3 或 GTK3++ 的等价物?

【问题讨论】:

【参考方案1】:
gtk_widget_set_sensitive (widget, FALSE);

注意,如果你需要检查一个小部件是否敏感,gtk_widget_get_sensitive() 返回上面函数设置的值,gtk_widget_is_sensitive() 会告诉你这个小部件真的是否敏感——这个也会受到父小部件敏感度的影响。

【讨论】:

【参考方案2】:

具体的控制,我觉得可以使用“set_sensitive”:

var button = new Gtk.Button.with_label("Hello");

button.set_sensitive(false); // true to enable the button

【讨论】:

这在 gnome shell 扩展 prefs.js 中完美运行

以上是关于如何在 GTK3 中禁用按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何从另一个线程取消 GTK3 线程?

GTK3 在按钮标签中换行

如何使用 Cairo 和 Gtk3 在 GtkDrawingArea 中绘制一条线

如何在 Gtk3 中在开罗上下文中使用 Skia 绘制

如何在 Python 和 Gtk3 中使用 Pango.AttrType.FOREGROUND?

垂直方向的 Gtk3+ Spinbutton (c/c++)