2
我已經搜索了一段時間,但無法找到用於創建和顯示窗口的python3 ctypes和Win32 API的簡單示例。請指向我的好鏈接或在這裏顯示代碼。python3 ctype CreateWindowEx簡單示例
提前致謝!
我已經搜索了一段時間,但無法找到用於創建和顯示窗口的python3 ctypes和Win32 API的簡單示例。請指向我的好鏈接或在這裏顯示代碼。python3 ctype CreateWindowEx簡單示例
提前致謝!
這對於win32gui模塊及其朋友win32api和win32con最容易。沒有必要將自己的ctypes包裝器寫入Windows API。最簡單的Petzold風格的應用出現這樣的:
import win32api, win32con, win32gui
class MyWindow:
def __init__(self):
win32gui.InitCommonControls()
self.hinst = win32api.GetModuleHandle(None)
className = 'MyWndClass'
message_map = {
win32con.WM_DESTROY: self.OnDestroy,
}
wc = win32gui.WNDCLASS()
wc.style = win32con.CS_HREDRAW | win32con.CS_VREDRAW
wc.lpfnWndProc = message_map
wc.lpszClassName = className
win32gui.RegisterClass(wc)
style = win32con.WS_OVERLAPPEDWINDOW
self.hwnd = win32gui.CreateWindow(
className,
'My win32api app',
style,
win32con.CW_USEDEFAULT,
win32con.CW_USEDEFAULT,
300,
300,
0,
0,
self.hinst,
None
)
win32gui.UpdateWindow(self.hwnd)
win32gui.ShowWindow(self.hwnd, win32con.SW_SHOW)
def OnDestroy(self, hwnd, message, wparam, lparam):
win32gui.PostQuitMessage(0)
return True
w = MyWindow()
win32gui.PumpMessages()
Python版本是3.2,我得到ImportError:沒有模塊名爲win32con錯誤消息。看來,沒有win32api,win32con,win32gui模塊 – 2011-03-18 20:01:46
你只是沒有安裝它。從這裏獲取:http://sourceforge.net/projects/pywin32/files/pywin32/Build216/ – 2011-03-18 20:33:49
我看到了,它是單獨安裝的,謝謝! – 2011-03-18 20:38:47