Matt> On Mon, Oct 08, 2001 at 11:09:51AM -0500, Skip Montanaro wrote:
    >> 
    >> gc = w.window.new_gc()
    >> color = gtk.gdk.color_parse("red")
    >> gc.set_foreground(color)

    Matt> You'd be surprised, but it's actually the background that you want
    Matt> to modify here.

    Matt> w.modify_bg(gtk.STATE_NORMAL, color)

Yeah, I guess I would be surprised, since I was hoping to change the color
of the text in the widget, not the background of the button.  ;-) Calling
modify_bg does change the background color of the button, but that's not
quite what I was after.

Maybe I should have phrased my question differently.  How do I change the
text color in a button?  I thought that would have been covered by asking
how to change the foreground color in a widget.  Given this code:

    import gtk

    def click(b, *args):
        gc = b.window.new_gc()
        color = gtk.gdk.color_parse("red")
        b.modify_bg(gtk.STATE_NORMAL, color)
        color = gtk.gdk.color_parse("green")
        b.modify_fg(gtk.STATE_NORMAL, color)

    def _test():
        window = gtk.Window(gtk.WINDOW_TOPLEVEL)
        window.set_title("title")
        window.connect("destroy", gtk.mainquit)

        close = gtk.Button(label="press me!")
        close.connect("clicked", click)
        window.add(close)

        window.show_all()

        gtk.mainloop()

    if __name__ == "__main__":
        _test()

after I click the button, when the button is in STATE_NORMAL, the background
is red, however the text is still black.

-- 
Skip Montanaro ([EMAIL PROTECTED])
http://www.mojam.com/
http://www.musi-cal.com/
_______________________________________________
pygtk mailing list   [EMAIL PROTECTED]
http://www.daa.com.au/mailman/listinfo/pygtk

Reply via email to