All,

        Looking for help on making my toplevel window backgrounds opaque or 
transparent.  I've seen sparse mention of setting the alpha property of the 
toplevel, but the only other mention I've seen in any documentation has to do 
with canvas widgets.  I'm running python 2.4 and the toplevel returns an error 
when I try to set the alpha param.

        >>> from Tkinter import *
        >>> root = Tk()
        >>> root.wm_attributes('-alpha', 0.5)
        Traceback (most recent call last):
          File "<pyshell#6>", line 1, in ?
            root.wm_attributes('alpha', 0.5)
          File "c:\python24\lib\lib-tk\Tkinter.py", line 1386, in wm_attributes
            return self.tk.call(args)
        TclError: wrong # args: should be "wm attributes window ?-disabled 
?bool?? ?-toolwindow ?bool?? ?-topmost ?bool??"


I first saw this referenced on effbot.org and was hoping to use it.

        http://effbot.org/tkinterbook/wm.htm


In Win32 programming I know this is a two step process but haven't found any 
equiv documentation for Tkinter and using the Python win32 modules doesn't work 
as seen here for Notepad.

        import win32con
        import win32api
        import win32gui
        import winxpgui

        # Notepad window handle
        hWND = 1050292

        # Prep the window for transparency...creates buffer of some sort in 
Windows
        win32gui.SetWindowLong (hWND, win32con.GWL_EXSTYLE, 
win32gui.GetWindowLong (hWND, win32con.GWL_EXSTYLE ) | win32con.WS_EX_LAYERED )

        # Get the window background color
        bgColor = win32api.GetSysColor(win32con.COLOR_WINDOW)
        r = bgColor & 0xFF
        g = (bgColor & 0x0000FF00) >> 8
        b = (bgColor & 0x00FF0000) >> 16

        # Re-compute the RGB value to pass to the SetLayeredWindowAttributes 
function
        winxpgui.SetLayeredWindowAttributes(hWND, win32api.RGB(r, g, b), 50, 
win32con.LWA_COLORKEY|win32con.LWA_ALPHA)


Any pointers would be greatly appreciated!

Thanks,

Bobby
_______________________________________________
Tkinter-discuss mailing list
[email protected]
http://mail.python.org/mailman/listinfo/tkinter-discuss

Reply via email to