gpt4 book ai didi

linux - 如何禁用 GtkMenuItem?

转载 作者:太空宇宙 更新时间:2023-11-04 10:44:26 24 4
gpt4 key购买 nike

如果满足某些条件,我想禁用一个菜单项。换句话说,防止它被点击。仍然可见,但通常变灰或类似。

菜单是手动建立的,类似这样:

void menu_action(GtkMenuItem* menuitem, gpointer menu_id){
printf("You selected menu id: %d\n", GPOINTER_TO_INT(menu_id));
}

void make_menu(){
GtkWidget *menu = gtk_menu_new();
GtkWidget *login = gtk_menu_item_new_with_label("Login");
GtkWidget *quit = gtk_menu_item_new_with_label("Quit");

gtk_menu_shell_append(GTK_MENU_SHELL(menu), login);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), quit);

g_signal_connect(G_OBJECT(login), "activate", G_CALLBACK(menu_action), GINT_TO_POINTER(-100));
g_signal_connect(G_OBJECT(quit), "activate", G_CALLBACK(menu_action), GINT_TO_POINTER(-101));
}

让我们假设,登录被选中。我想做的是执行登录操作,将菜单项标签更改为登录人的用户名,然后将其禁用,使其无法点击。我该怎么做?

最佳答案

他们选择使用“敏感”一词来描述这种行为:

gtk_widget_set_sensitive(login, FALSE);
gtk_menu_item_set_label(GTK_MENU_ITEM(login), "Logged In: Matt");

关于linux - 如何禁用 GtkMenuItem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33680071/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com