allora stavo provando a suddividere un programma per rendere tutto un po + ordinato creandomi una funzione che i crei la finestra principale ma quando compilo mi da errore:
ecco il codice della funzione e poi quello del main.giordano@giordano-desktop:~$ gcc `pkg-config --cflags --libs gtk+-2.0` '/home/giordano/Documents/main.c' -o text
/home/giordano/Documents/main.c: In function ‘main’:
/home/giordano/Documents/main.c:9: error: incompatible types in assignment
gui.c
main.ccodice:#include <gtk/gtk.h> #include "gui.h" GtkWidget* create_gui(void){ GtkWidget *window; GtkWidget *box; GtkWidget *textView; GtkWidget *sw; GtkWidget *eventb; GtkWidget *statusbar; GtkWidget *menubar; GtkWidget *file,*fileI; GtkWidget *label; window = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(GTK_OBJECT(window),"delete_event",G_CALLBACK(gtk_main_quit),NULL); g_signal_connect(G_OBJECT(window),"destroy", G_CALLBACK(gtk_main_quit),NULL); gtk_window_set_title(GTK_WINDOW(window),"text"); gtk_container_set_border_width(GTK_CONTAINER(window),0); gtk_window_set_default_size(GTK_WINDOW(window),400,400); gtk_widget_show (window); box = gtk_vbox_new(FALSE,0); gtk_container_add (GTK_CONTAINER (window), box); gtk_widget_show (box); menubar = gtk_menu_bar_new(); gtk_box_pack_start (GTK_BOX (box), menubar, FALSE, FALSE, 0); gtk_widget_show(menubar); fileI = gtk_menu_item_new_with_label("File"); gtk_widget_show (fileI); gtk_container_add (GTK_CONTAINER (menubar), fileI); file = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (fileI), file); sw = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_widget_show (sw); gtk_box_pack_start (GTK_BOX (box), sw, TRUE, TRUE, 0); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); textView = gtk_text_view_new(); gtk_widget_show (textView); gtk_container_add (GTK_CONTAINER (sw), textView); gtk_box_pack_start(GTK_BOX(box),sw,FALSE,FALSE,0); eventb = gtk_event_box_new (); gtk_widget_show (eventb); gtk_box_pack_start (GTK_BOX (box), eventb, FALSE, FALSE, 0); statusbar = gtk_statusbar_new(); gtk_container_add (GTK_CONTAINER (eventb), statusbar); gtk_widget_show(statusbar); label = gtk_label_new("\t\t\t\tLn , Col"); gtk_widget_show(label); gtk_statusbar_push(GTK_STATUSBAR(statusbar),gtk_statusbar_get_context_id (GTK_STATUSBAR(statusbar), ""),gtk_label_get_text(GTK_LABEL(label))); return window; }
spero si possa risolverecodice:#include <gtk/gtk.h> #include "gui.h" int main(int argc,char* argv[]){ GtkWidget* window; gtk_init(&argc,&argv); window = create_gui(); gtk_widget_show (window); gtk_main(); return 0; }![]()

Rispondi quotando