GTK, Glade: Text in Entry eines anderen Fensters schreiben
-
Hallo,
Ich habe ein Hauptfenster und ein Unterfenster. Im diesem Unterfenster sollen Werte eingegeben werden. Mit OK wird das Fenster geschlossen, die Werte werden gespeichert und sollten im Hauptfenster in einem Entry erscheinen.
Der Text soll mit dem Befehlgtk_entry_set_text()
in das Entry geschrieben werden. Jedoch wird der Text nicht in das Entry geschrieben. Statt dessen erscheint die Meldung
(projekt3:38472): Pango-WARNING **: Invalid UTF-8 string passed to pango_layout_set_text()
Weiß da jemand was darüber?
Gruß, toolen
-
Deutet auf ein Konvertierungsproblem hin, zeig mal ein wenig Code.
-
Hier ein Teil des Codes....
Die Zeile, die auskommentiert ist, ist die Problemzeile. Ist sie nicht auskommentiert, erscheint die Meldung.Gruß und Danke
GtkEntry *entry_answer_time = (GtkEntry *) lookup_widget(window_port_config, "entry_answer_time"); NewConfig.UITimeOut = atoi(gtk_entry_get_text(entry_answer_time)); sprintf(text2, "Timeout: %d ms", NewConfig.UITimeOut); strcat(text, text2); //gtk_entry_set_text((GtkEntry *) lookup_widget(window1, "entry_config"), text); gtk_widget_destroy(window_port_config);
-
Beim Googlen habe ich folgende Seite entdeckt:
[url]
http://archives.neohapsis.com/archives/openbsd/2005-10/1675.html
[/url]
Allerdings weiß ich nicht, wo ich das Eintragen soll.... im Programm? Oder im Linux?Gruß
-
Ist eine Linux - Umgebungsvariable, aber auf dem Link von dir steht auch, dass es irrelevant sei, ich würd die Warnung trotzdem beheben, nervt auch nicht so beim Kompilieren.
-
Ja klar,
das nervt nicht nur, der Text wird auch nicht in das Entry eingefügt.... also, "Was tun?", sprach Zeus?
Gruß
-
Apollo spricht: Setze die Umgebungsvariable CHARSET wie beschrieben und gib den Text mal auf die Shell aus, ob er korrekt dargestellt wird.
-
Ah, ja... das war es.
Und zwar: mit CHARSET musste ich nichts machen. Problem war:
ich habe in das auszugebende Char-Array Zeichen mit strcat() angehängt. Dann wurde bei der Ausgabe VOR diesem String immer ein beliebeiges Zeichen ausgegeben. Das habe ich nicht beachtet...
Lösung: Die ersten Zeichen habe ich jetzt mit strcpy() reinkopiert und alle weiteren mit strcat() angehängt.
Jetzt funktionierts
Frohe Weihnachten! :xmas1: