GTK+ Fragen
-
hab ich aber bleibt immer noch in der mitte, es tut sich dabei nichts.
-
mach mal folgendes:
txt_headline = gtk_label_new("blah\n bla \n bal");
mit zeilenumbruch müsste es gehen.
-
Ja das funktioniert zwar einerseits schon, der Text wird linksbündig ausgerichtet.
Aber....das ganz wird in der mitte zentriert.Das Fenster ist 500x400 pixel groß.
Der Container steht auf 10pixel bei "border_width".Der TExt steht also in der Mitte von dem Fenster, wie bekomm ich den denn dann aber ganz links ans Fenster?
-
stell mal die border um
gtk_container_set_border_width(GTK_CONTAINER(fenster),0);ich weiß nicht genau, was du suchst.. aber ich denke, das.
-
Nein, habe leider kein webspace frei sonst hätt ich dir gerne ein screeny zeigen können. Ich versuche es mal so:
................................................ .[.] [_][ ][X]. ................................................ . . . Text ist . . linksbündig . . ausgerichtet . . aber dennoch in der Mitte . . . . . ................................................
-
einnmal rechts, einmal links...
ich geb zu, rechts will es nicht ganz an den rand, nur fast...
#include <gtk/gtk.h> void ende_cb(GtkObject *object) { gtk_main_quit(); } int main(int argc, char **argv) { GtkWidget *fenster; GtkWidget *box, *box2; GtkWidget *label1, *label2; GtkWidget *button_quit; GtkWidget *container; gchar *string; GtkWidget *txt_headline; gtk_init(&argc, &argv); fenster = gtk_window_new(GTK_WINDOW_TOPLEVEL); button_quit = gtk_button_new_with_label("Ende"); box = gtk_vbox_new(TRUE,0); label1 = gtk_label_new("Hallo Welt links, testi\ntesti von etwas\n" "testi"); gtk_label_set_justify(GTK_LABEL(label1),GTK_JUSTIFY_LEFT); label2 = gtk_label_new("Hallo Welt rechts, testi\ntesti von etwas\n" "testi"); gtk_label_set_justify(GTK_LABEL(label2),GTK_JUSTIFY_RIGHT); gtk_signal_connect_object(GTK_OBJECT(button_quit), "clicked", GTK_SIGNAL_FUNC(ende_cb), GTK_OBJECT(fenster)); gtk_signal_connect(GTK_OBJECT(fenster), "destroy", GTK_SIGNAL_FUNC(ende_cb), NULL); gtk_window_set_position(GTK_WINDOW(fenster),GTK_WIN_POS_CENTER); gtk_container_set_border_width(GTK_CONTAINER(fenster),0); gtk_box_pack_start(GTK_BOX(box), label1, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(box), label2, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(box), button_quit, FALSE, FALSE, 0); gtk_container_add(GTK_CONTAINER(fenster),box); gtk_widget_show_all(fenster); gtk_main(); return 0; }
nur testing, ohne genauer zu beleuchten.
-
Ja genau, jetz füge mal unter:
fenster = gtk_window_new(GTK_WINDOW_TOPLEVEL);
die Zeile ein:
gtk_window_set_default_size(GTK_WINDOW(fenster), 500, 500);
Dann weist du was ich meine.
-
*bastel*
hab ein alignement zwischengesetzt
int main(int argc, char **argv) { GtkWidget *fenster; GtkWidget *box, *box2; GtkWidget *label1, *label2; GtkWidget *button_quit; GtkWidget *container; gchar *string; GtkWidget *txt_headline; GtkAdjustment *adj; gtk_init(&argc, &argv); fenster = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_default_size(GTK_WINDOW(fenster), 500, 500); button_quit = gtk_button_new_with_label("Ende"); box = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(fenster),box); label1 = gtk_label_new("Hallo Welt links, testi\ntesti von etwas\n" "testi"); gtk_label_set_justify(GTK_LABEL(label1),GTK_JUSTIFY_LEFT); label2 = gtk_label_new("Hallo Welt rechts, testi\ntesti von etwas\n" "testi"); gtk_label_set_justify(GTK_LABEL(label2),GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (label1), 0, 0.5);//<-- gtk_signal_connect_object(GTK_OBJECT(button_quit), "clicked", GTK_SIGNAL_FUNC(ende_cb), GTK_OBJECT(fenster)); gtk_signal_connect(GTK_OBJECT(fenster), "destroy", GTK_SIGNAL_FUNC(ende_cb), NULL); gtk_window_set_position(GTK_WINDOW(fenster),GTK_WIN_POS_CENTER); gtk_container_set_border_width(GTK_CONTAINER(fenster),0); gtk_box_pack_start(GTK_BOX(box), label1, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(box), label2, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(box), button_quit, FALSE, FALSE, 0); gtk_widget_show_all(fenster); gtk_main(); return 0; }
-
elise....viielen dank
nun bleiben da bei mir aber noch 2 fragen übrig:
- wie füge ich ei bild ein
- wie verändere/bestimme ich die größe eine buttons, einer textbox
-
fürs image gibt es hier ein beispiel
http://docs.linux.cz/gtk/gtkimage.html