GTK: Eingabefeld ausrichten



  • Hallo,

    ich bin Neuling im GTK-Kosmos und bitte um Verzeihung für folgende Newbiefrage 😉 :

    Wie richte ich ein Eingabefeld in einer Tabelle aus? Ich habe das Problem, dass ich in 2 untereinander stehenden Feldern jeweils unterschiedlich lange Eingabefelder habe. Im Moment werden die im Feld immer mittig ausgerichtet, ich hätte aber gerne dass sie linksbündig angebracht sind! Mit den Labels habe ich das hinbekommen, aber mit den Eingabefeldern funzt das irgendwie nicht 😞 !

    Vielen Dank schonmal für die Hilfe!

    Grüße
    Trombo



  • Hallo,

    zeig mal bitte deinen Code (den relevanten Teil davon), ist momentan alles etwas schwammig.

    MfG

    GPC



  • Hallo,

    unten befindet sich der Codeausschnitt, sorry dass es so lange gedauert hat. Mein Problem ist, dass das Eingabefeld im Feld (1,2,1,2) der Tabelle immer mittig angeordnet ist! Ich würde es aber gerne am linken Rand innerhalb des Feldes anordnen, damit es mit weiteren darunterliegenden unterschiedlich langen Einfabefeldern linksbündig angeordnet ist! Mit dem Textlabel funktioniert das mit dem Aufruf "gtk_misc_set_alignment" einwandfrei, bei dem Eingabefeld klappt das aber nicht! Was muss ich tun???

    Grüße
    Trombo

    ...
    static  GtkLabel   *label;
    static  GtkEntry   *entry;
    GtkWindow  *win;
    GtkTable   *table;
    ...
    win = g_object_new( GTK_TYPE_WINDOW,
                          "title", "Test-Programm",
                          "default-width",  380,
                          "default-height", 200,
                          "allow-grow", FALSE,
                          "allow-shrink", FALSE,
                          "resizable", FALSE,
                          "window-position", GTK_WIN_POS_CENTER,
                          "border-width", 20,
                          "icon", pic,
                          NULL );
    
    table = g_object_new( GTK_TYPE_TABLE,
                            "n-rows", 12,
                            "n-columns", 2,
                            "row-spacing", 3,
                            "column-spacing" , 3,
                            "homogeneous", FALSE,
                            NULL);
    
    label = g_object_new( GTK_TYPE_LABEL,
                          "justify", GTK_JUSTIFY_LEFT,
                          "label", "IP-Adresse:",
                          NULL );
    
    entry = g_object_new( GTK_TYPE_ENTRY,
                          "text", "",
                          "max-length"  ,15,
                          "width-chars", 15,
                          NULL );
    
    gtk_table_attach ( GTK_TABLE (table), GTK_WIDGET(label),
                          0, 1, 1, 2,
                          GTK_FILL, GTK_FILL, 0, 0);
    
    gtk_table_attach ( GTK_TABLE (table), GTK_WIDGET(entry),
                          1, 2, 1, 2,
                          GTK_SHRINK, GTK_FILL, 0, 0);
    
    gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
    
    ...
    

  • Mod

    Schau dir doch mal die GTK(mm) artikel im Magazin an, da müsstest du vieles genauer erklärt finden.


Anmelden zum Antworten