我正在创建一个弹出式gtkdialogbox,提示用户输入。 这是我的代码:
GtkWidget *button = gtk_button_new_with_label ("add a new button");
//adding a new button
GtkWidget * new_button_dialog = gtk_dialog_new_with_buttons("new button",(GtkWindow *)container,GTK_DIALOG_DESTROY_WITH_PARENT,"OK", GTK_RESPONSE_NONE,NULL);
GtkWidget * content_area = gtk_dialog_get_content_area (GTK_DIALOG (new_button_dialog));
GtkWidget * button_name_label = gtk_label_new ("Press escape at any time to cancel.\ntype in the button name");
gtk_container_add (GTK_CONTAINER (content_area) , button_name_label);
GtkWidget * button_name_entry = gtk_entry_new();
gtk_entry_set_activates_default((GtkEntry*)button_name_entry,TRUE);
gtk_container_add(GTK_CONTAINER(content_area), button_name_entry);
问题是我在用户按下回车时尝试接受输入 gtk_entry_set_activates_default 当我按下回车键时(当条目有焦点时)我什么都没得到
感谢
答案 0 :(得分:1)
这是我的工作代码:
GtkWidget * ok_button = gtk_dialog_get_widget_for_response(new_button_dialog, GTK_RESPONSE_OK);
gtk_entry_set_activates_default((GtkEntry*)button_name_entry,TRUE);
gtk_widget_grab_default(ok_button);