1

非常直截了当的问题,我有一个GtkEntry小部件,我想将其设置为可编辑。我知道我应该使用的功能是:

gtk_editable_set_editable

但我不知道如何让它以一个GtkEntry小部件作为参数

这是我正在使用的代码:

GtkWidget *TextEntry;
TextEntry = gtk_entry_new();

gtk_entry_set_visibility(GTK_ENTRY(TextEntry), TRUE);
gtk_entry_set_editable(GTK_ENTRY(TextEntry), TRUE);
gtk_entry_set_overwrite_mode(GTK_ENTRY(TextEntry), TRUE);
gtk_widget_set_can_focus(GTK_WIDGET(TextEntry), TRUE);
gtk_widget_grab_focus(TextEntry);

panel_applet_request_focus(applet, 10);
gtk_container_add (GTK_CONTAINER (applet), TextEntry);

gtk_widget_show_all (GTK_WIDGET (applet));

就获得键盘焦点而言,我认为我需要该panel_applet_request_focus ()功能。它要求我将相关的小程序和触发窗口焦点的事件的时间戳传递给它

我不确定要为时间戳输入什么。我编译了上面的代码,当我点击小程序时仍然无法获得键盘焦点。

4

1 回答 1

4

请执行下列操作:

GtkWidget* entry = gtk_entry_new();
gtk_entry_set_editable(GTK_ENTRY(entry), TRUE);

欢迎来到 GObject 的世界 :)

请注意,如果您使用的是 gtk_editable,则需要执行以下操作:

gtk_editable_set_editable(GTK_EDITABLE(entry), TRUE);
于 2010-04-27T12:14:54.083 回答