Login
Newsletter
Werbung

Mo, 22. November 1999, 00:00

GNOME-Workshop: Die Statusleiste

In diesem Teil wird eine Statusleiste hinzugefügt.

Das Grundgerüst der Statusleiste

Um in das Programm prg01_02.c eine Statusleiste einzufügen, benötigt man genau drei zusätzliche Zeilen:

/* 001 */ #include <gnome.h>
/* 002 */
/* 003 */ GtkWidget *fenster;
/* 004 */ GtkWidget *feld;
<strong>/* 005 */ GtkWidget *statusleiste;</strong>
/* 006 */
/* 007 */ int main (int argc, char *argv[])
/* 008 */ {
/* 009 */ gnome_init_with_popt_table("", NULL, argc, argv, NULL, 0, NULL);
/* 010 */ fenster = gnome_app_new("", _("mein Programm") );
/* 011 */ gtk_window_set_policy(GTK_WINDOW(fenster), TRUE, TRUE, FALSE);
/* 012 */ feld = gtk_drawing_area_new();
/* 013 */ gnome_app_set_contents(GNOME_APP(fenster), feld);
/* 014 */ gtk_drawing_area_size(GTK_DRAWING_AREA(feld), 400, 300);
<strong>/* 015 */ statusleiste = gnome_appbar_new(FALSE, TRUE, GNOME_PREFERENCES_USER);
/* 016 */ gnome_app_set_statusbar(GNOME_APP(fenster), statusleiste);</strong>
/* 017 */ gtk_widget_set_uposition(fenster, 60, 20);
/* 018 */ gtk_widget_show(fenster);
/* 019 */ gtk_main();
/* 020 */ return 0;
/* 021 */ }

Da es sich hier um kein Hello-World-Programm mehr handelt, wurde in Zeile 10 nun festgelegt, daß in der Titelleiste des Fensters von nun an "mein Programm" steht.

Einen Text neben die Statusleiste schreiben

/* 001 */ #include <gnome.h>
/* 002 */
/* 003 */ GtkWidget *fenster;
/* 004 */ GtkWidget *feld;
/* 005 */ GtkWidget *sttbl;
/* 006 */ GtkWidget *label;
/* 007 */ GtkWidget *statusleiste;
/* 008 */
/* 009 */ int main (int argc, char *argv[])
/* 010 */ {
/* 011 */ gnome_init_with_popt_table("", NULL, argc, argv, NULL, 0, NULL);
/* 012 */ fenster = gnome_app_new("", _("mein Programm") );
/* 013 */ gtk_window_set_policy(GTK_WINDOW(fenster), TRUE, TRUE, FALSE);
/* 014 */ feld = gtk_drawing_area_new();
/* 015 */ gnome_app_set_contents(GNOME_APP(fenster), feld);
/* 016 */ gtk_drawing_area_size(GTK_DRAWING_AREA(feld), 400, 300);
/* 017 */ sttbl = gtk_table_new(1, 8, FALSE);
/* 018 */ label = gtk_label_new(_("hier steht der Text "));
/* 019 */ gtk_table_attach(GTK_TABLE(sttbl), label, 0, 1, 0, 1, 0, 0, 3, 3);
/* 020 */ gtk_widget_show(label);
/* 021 */ gtk_widget_show(sttbl);
/* 022 */ statusleiste = gnome_appbar_new(FALSE, TRUE, GNOME_PREFERENCES_USER);
/* 023 */ gtk_box_pack_start(GTK_BOX(statusleiste), sttbl, FALSE, FALSE, 0);
/* 024 */ gnome_app_set_statusbar(GNOME_APP(fenster), statusleiste);
/* 025 */ gtk_widget_set_uposition(fenster, 60, 20);
/* 026 */ gtk_widget_show(fenster);
/* 027 */ gtk_main();
/* 028 */ return 0;
/* 029 */ }

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung