Re: 2. Versuch. gtk-Fehler mit gtk_text_view.
Günther Montag <[email protected]>
| Newsgroups | gmane.linux.suse.programming |
|---|---|
| Message-ID | <[email protected]> |
Am Donnerstag, 3. März 2005 13:48 schrieb Günther Montag:
> Ein mit glade erstelltes Programm
> soll Zehlen einlesen und dann bei Klicken auf einen Knopf etwas rechenn.
> Anfängerprojekt mit meinem 12 - jährigen Junior-Hacker.
>
> Ausschnit aus der callback-Funktion
>
> ....
>
> void on_kberechnen_clicked (GtkButton *button,
> gpointer user_data)
> {
> int von, bis, Teiler, i, j, prozent, anzeige, nextanzeige;
> float ver;
> char buf [128];
> GtkEntry *entry;
> GtkWidget *view;
> GtkTextBuffer *buffer;
> GtkTextIter *iter = NULL;
> char zwi[256];
>
> view = (gtk_object_get_data(GTK_OBJECT(Form), "kanzeige"));
> buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));
>
> entry = GTK_ENTRY(gtk_object_get_data(GTK_OBJECT(Form), "kvon"));
>
> /* Lese ein*/
>
> von = strtoul(gtk_entry_get_text(entry), NULL, 0);
>
>
> /*gebe aus */
> sprintf(zwi, "von = %d", von);
> gtk_text_buffer_get_iter_at_offset (buffer, iter, -1);
> gtk_text_buffer_set_text (buffer, "Hello, this is some text", -1);
>
> --------------- aus gtk-demo abgekupfert,
> --------------- bis hierher geht es gut, -----------------------------
>
> gtk_text_buffer_get_end_iter (buffer, iter);
> gtk_text_buffer_insert (buffer, iter, zwi, strlen(zwi));
>
> ----------- dies sollte eigentlich ein erster Test fürs
> ----------- Text-Anhängen sein,
> ----------- aber hier gibt es diese Fehlermeldungen:
>
>
> (kprim:10778): Gtk-CRITICAL **: file gtktextbuffer.c: line 2537
> (gtk_text_buffer_get_iter_at_offset): assertion `iter != NULL' failed
>
> (kprim:10778): Gtk-CRITICAL **: file gtktextbuffer.c: line 2579
> (gtk_text_buffer_get_end_iter): assertion `iter != NULL' failed
>
> (kprim:10778): Gtk-CRITICAL **: file gtktextbuffer.c: line 589
> (gtk_text_buffer_insert): assertion `iter != NULL' failed
>
> ------------------------------------------------------------
>
> Was machen wir falsch mit dem iter ?
>
> bitte Hilfe! Danke !!
>
> -
habs selbst gefunden:
Iter beim Initialisieren ohne Sternchen,
beim Aufrufen mit & (Referenz). so geht es.
--
Günther Montag
[email protected]
--
Um die Liste abzubestellen, schicken Sie eine Mail an:
[email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]