thanks mark. i've got to the bottom of the problem -- there seems to be a problem with constructing/updating PyBitmaps.
or, more generally, the fuzzy boundary between win32gui and win32ui. what do you think about python-wrapping the win32 api, and building the MFC-like class system in python? a few win32gui functions are missing, which means i have to use win32ui. but i guess there's venster for that... but it appears pretty inactive. this code works: hwnd=CreateWindow(...) wnd=CreateWindowFromHandle(hwnd) dc=GetDC(hwnd) bm=CreateBitmapFromHandle(CreateCompatibleBitmap(dc,w,h)) print bm.GetSize() --> (944,734) while this (supposedly evuivalent) code: wdc=wnd.GetDC() bm=CreateBitmap() bm.CreateCompatibleBitmap(wdc,w,h) print bm.GetSize() --> (0,0) Mark Hammond said: >> hi, i can't seem to create a bitmap in memory using pywin32. >> my assert >> fails, telling me that the bitmap size is (0,0)? > > I'm no expert on GDI programming at all. However, I have code that works > that looks like: > > hdcBitmap = win32gui.CreateCompatibleDC(0) > hdcScreen = win32gui.GetDC(0) > hbm = win32gui.CreateCompatibleBitmap(hdcScreen, size_x, size_y) hbmOld = win32gui.SelectObject(hdcBitmap, hbm) > # draw on hbm > win32gui.SelectObject(hdcBitmap, hbmOld) > win32gui.DeleteDC(hdcBitmap) > win32gui.DeleteDC(hdcScreen) > # hbm can now be used. > > That appears subtly different. The code is from > win32\Demos\win32gui_menu.py - it draws some bitmaps on menus. > > Mark > _______________________________________________ Python-win32 mailing list Python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32