GTK TABLE
-
Hallo
ich habe folgendet erstellt:
http://dominik.bmf-server.com/logo.png
warum ist zwischen den bilder noch ein abstand habe doch cellspacing auf 0 etc:
#include <gtk/gtk.h> #define NBOOK 3 #define BUF 35 #define IMG 7 static gint delete_Event(GtkWidget *widget, GdkEvent event, gpointer daten) { g_print("Das Fenster wird zerstoert!\n"); return FALSE; } static void end ( GtkWidget *widget, gpointer daten ) { g_print("Und tschuess!\n"); gtk_main_quit(); } int main(int argc, char **argv) { GtkWindow *win; GtkImage *image[IMG]; GtkTable *mitte; GtkTable *oben; GtkTable *alle; GtkTable *unten; GtkNotebook *nbook; GtkLabel *nbook_content[NBOOK],*nbook_titel[NBOOK]; GtkDrawingArea * draw; guint i; gchar buf[BUF]; gtk_init( &argc, &argv ); image[0] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/obenLinks.jpg", NULL)); image[1] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/oben mitte.jpg", NULL)); image[2] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/mitte links.jpg", NULL)); image[3] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/mitte rechts.jpg", NULL)); image[4] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/oben Rechts.jpg", NULL)); image[5] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/unten mitte.jpg", NULL)); image[6] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/untenlinks.gif", NULL)); image[7] = GTK_IMAGE(g_object_new( GTK_TYPE_IMAGE, "file", "images/unten rechts.jpg", NULL)); win = GTK_WINDOW(g_object_new( GTK_TYPE_WINDOW, "title", "Lynax Messenger", "window-position", GTK_WIN_POS_CENTER, NULL )); gtk_window_set_decorated (win, FALSE); unten = GTK_TABLE(g_object_new( GTK_TYPE_TABLE, "n-columns", 3, "n-rows", 1, "column-spacing",0, "row-spacing",0, NULL)); oben = GTK_TABLE(g_object_new( GTK_TYPE_TABLE, "n-columns", 3, "n-rows", 1, "column-spacing",0, "row-spacing",0, NULL)); mitte = GTK_TABLE(g_object_new( GTK_TYPE_TABLE, "n-columns", 3, "n-rows", 1, "column-spacing",0, "row-spacing",0, NULL)); alle = GTK_TABLE(g_object_new( GTK_TYPE_TABLE, "n-columns", 1, "n-rows", 2, "column-spacing",0, "row-spacing",0, NULL)); nbook = GTK_NOTEBOOK(g_object_new( GTK_TYPE_NOTEBOOK, "enable-popup", TRUE, NULL )); for(i=0; i < NBOOK; i++) { if(i==0) { g_snprintf(buf,BUF,"Seote 2"); } else if(i==1) { g_snprintf(buf,BUF,"Seote 2",i+1); } else { g_snprintf(buf,BUF,"Seote 3",i+1); } nbook_content[i] = GTK_LABEL(g_object_new( GTK_TYPE_LABEL, "label", buf, NULL)); g_snprintf(buf,BUF,"Seite %d",i+1); nbook_titel[i] = GTK_LABEL(g_object_new( GTK_TYPE_LABEL, "label", buf, NULL )); gtk_notebook_append_page_menu(nbook, GTK_WIDGET(nbook_content[i]), GTK_WIDGET(nbook_titel[i]), NULL); } g_signal_connect( win, "delete-event", G_CALLBACK(delete_Event), NULL ); g_signal_connect( win, "destroy", G_CALLBACK(end), NULL ); gtk_table_attach_defaults(GTK_TABLE(alle),GTK_WIDGET (oben), 1,2, 0,1); gtk_table_attach_defaults(GTK_TABLE(alle),GTK_WIDGET (mitte), 1,2, 1,2); gtk_table_attach_defaults(GTK_TABLE(alle),GTK_WIDGET (unten), 1,2, 2,3); gtk_table_attach_defaults(GTK_TABLE(mitte),GTK_WIDGET (nbook), 1,2, 1,2); gtk_table_attach_defaults(GTK_TABLE(mitte),GTK_WIDGET (image[2]), 0,1, 1,2); gtk_table_attach_defaults(GTK_TABLE(mitte),GTK_WIDGET (image[3]), 2,3, 1,2); gtk_table_attach_defaults(GTK_TABLE(unten),GTK_WIDGET (image[6]), 0,1, 0,1); gtk_table_attach_defaults(GTK_TABLE(unten),GTK_WIDGET (image[5]), 1,2, 0,1); gtk_table_attach_defaults(GTK_TABLE(unten),GTK_WIDGET (image[7]), 2,3, 0,1); gtk_table_attach_defaults(GTK_TABLE(oben),GTK_WIDGET (image[0]), 0,1, 0,1); gtk_table_attach_defaults(GTK_TABLE(oben),GTK_WIDGET (image[1]), 1,2, 0,1); gtk_table_attach_defaults(GTK_TABLE(oben),GTK_WIDGET (image[4]), 2,3, 0,1); gtk_container_add(GTK_CONTAINER(win), GTK_WIDGET(alle)); gtk_widget_show_all( GTK_WIDGET(win) ); gtk_main(); g_print("Die GTK-Hauptschleife wurde beendet\n"); return 0; }
-
Hi,
sind die merkwürdigen schwarzen Formen deine "Bilder"? Wenn ja, was wolltest du bezwecken? Sehe ich das richtig, dass du für jedes der jpgs einen eigenen GtkTable verwendet hast?
Ich steig noch nicht so ganz durch
Brauche mehr Infos...Grüße
GPC
-
danke für die antwort:
nein nein ich hab 4 tabellen,
die tabelle alle umschließt die anderen 3
die tabelle oben beinhaltet die drei bilder oben
die tabelle mitte beinhalter die 2 bilder in der mitte und das notbook
die tabelle unten beinhaltet die 3 bilder unten also die 2 ecken und die geradeaber ich muss den abstand von der tabelle 2 zur 3 zb wegbekommen.... und 1 zu 3 da ist irgent ein 2 px abstand oder so
-
meinen eigenen rahmen, ja die formen sol der rahmen werden...
-
update:
http://dominik.bmf-server.com/logo.png
wie bekomm ich die etz optimal aneinandere gereihte wie es links schon bei 2en ist?
-
rechts mein ich;)
-
hat sich erledigt totzdem danke für deine mühe
-
Hallo Dominik,
jo, in solchen Fällen helf ich gerne^^
MfG
GPC
-
wisst ihr zufällig wo man die gtk/gtk.h herkriegt?
-
Wie? Wo man die herkriegt?
Wenn man sich GTK+ installiert, ist die immer dabei. Liegt im gtk Verzeichnis rum.