我有一个这样的对话:
GtkWidget *dialog = gtk_dialog_new_with_buttons("Spell Checking", NULL, 0,
GTK_STOCK_OK,
GTK_RESPONSE_ACCEPT,
GTK_STOCK_ADD,
GTK_RESPONSE_APPLY,
GTK_STOCK_CANCEL,
GTK_RESPONSE_REJECT,
NULL);
添加所有其他必要元素后,它将如下所示:
如果正确单词列表为空,我想要禁用OK
按钮。
当然,有一些解决方法,比如创建一个对话框:
OK
当列表不为空时然而,我想知道我是否可以禁用/淡化一个按钮以及如何。
答案 0 :(得分:4)
GTK小部件通常具有属性Sensitive
,当它设置为false时,小部件变灰,即用户无法与之交互。有a function for that purpose
void
gtk_widget_set_sensitive (GtkWidget *widget,
gboolean sensitive);
您也可以尝试直接设置它,例如myButton->Sensitive = false
。