GTK+ Typenproblem
lima-city → Forum → Programmiersprachen → C/C++ und D
argument
code
erstellt code
fehler
feld
file
folgende warnung
funktion
label
note
pointer
sagen
team
test
text
treten
type
versuch
windows
zeile
-
Hallo zusammen,
ich spiele momentan ein wenig mit GTK+ 2. Beim kompillieren des Codes tritt folgende Warnung auf:
Initialisiert wird ein Label mitIn file included from source/windows/beamer.h:1:0, from source/main.c:3: source/windows/beamer.c: In function ‘beamer_init’: source/windows/beamer.c:56:23: warning: passing argument 1 of ‘gtk_label_set_text’ from incompatible pointer type gtk_label_set_text (name[0][0], "Hallo"); ^ In file included from /usr/include/gtk-2.0/gtk/gtkaccellabel.h:38:0, from /usr/include/gtk-2.0/gtk/gtk.h:35, from source/main.c:1: /usr/include/gtk-2.0/gtk/gtklabel.h:112:23: note: expected ‘struct GtkLabel *’ but argument is of type ‘struct GtkWidget *’ void gtk_label_set_text (GtkLabel *label, ^
und dann erstelltGtkWidget *name[2][2]
.name[0][0] = gtk_label_new("Test");
Bis dahin funktioniert alles einwandfrei. Der Fehler tritt auf, sobald ich den Text des Labels verändern möchte:gtk_label_set_text (name[feld][team], team_name);
Ich würde mal sagen dass da irgendwo ein falscher Typ ist. Wird für Labels ein anderer Datentyp verwendet als für normale Widgets? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du hast hier ein GtkWidget defeniert und die funktion will aber ein GtkLabel.
Ich weiß nicht in wie fern du es ab ändern kannst.
Ich kenn mich mit GTK gaar nicht aus. Aber basiert das Labale auf dem widtget.
Ich vermute mal schon, wegen der Zeile:
name[0][0] = gtk_label_new("Test");
Dann versuch es mit
GtkLabel labeltomod = (GTKLabel)name[feld][team]; gtk_label_set_text(labeltomod , team_name);
Das sehe ich auf jeden fall im Fehlercode.
Ich kann mich aber auch irren :) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage