Wie man Text bearbeitbar in GtkEntry gesetzt
Frage
ziemlich geradlinig Frage, ich habe einen GtkEntry
Widget habe, dass ich festlegen mag editierbar sein. Ich weiß, dass die Funktion soll ich verwenden ist:
gtk_editable_set_editable
Aber ich weiß nicht, wie es einen GtkEntry
Widget als Argument nehmen machen
Hier ist der Code, den ich mit:
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));
So weit Tastaturfokus immer, ich glaube, ich die panel_applet_request_focus ()
Funktion benötigen. Es erfordert, dass ich es das Applet in Frage und den Zeitstempel des Ereignisses übergeben Auslösen des Fensterfokus
Ich bin nicht sicher, was für den Zeitstempel setzen in. Ich den Code kompiliert, wie oben, und ich kann immer noch nicht den Tastaturfokus erhalten, wenn ich das Applet klicken.
Lösung
wie folgt vor:
GtkWidget* entry = gtk_entry_new();
gtk_entry_set_editable(GTK_ENTRY(entry), TRUE);
Willkommen in der Welt von GObject:)
Beachten Sie, dass, wenn Sie gtk_editable verwendet haben, müssen Sie tun:
gtk_editable_set_editable(GTK_EDITABLE(entry), TRUE);