GTK2 Button einfärben



  • Ich wollte hier folgendes Beispiel "The enter signal" ausprobieren.
    Nur färbt sich bei mir der Button nicht ein

    https://zetcode.com/gui/gtk2/gtkevents/

    void enter_button(GtkWidget *widget, gpointer data) {
      GdkColor col = {0, 27000, 30000, 35000};
      gtk_widget_modify_bg(widget, GTK_STATE_PRELIGHT, &col);
      printf("enter\n");
    }
    

    Die Funktion wird aufgerufen, dies beweist das printf.
    ich habe auch schon probiert, nativ "btn" anzusprechen, auch da sehe ich keine Farbänderung.

    Was mache ich falsch ?



  • Ich glaube nicht dass GTK_STATE_PRELIGHT dafür gedacht ist dynamisch beim Mouse-Enter Event gesetzt zu werden. Sondern dafür dass man es gleich bei Erzeugen des Widget setzt und dann immer so lässt.

    Ob das mit deinem Problem zu tun hat kann ich nicht sagen. Ich hätte angenommen dass GTK das Widget trotzdem updaten sollte, und die Farbänderung daher sichtbar werden sollte. Ich hab aber auch von GTK keinen Plan. Von daher...


Anmelden zum Antworten