python win32 找如何才能将我自己创建的窗口_自创 置父到外部的D3D窗口_父 中 正常的办法 置父后 窗口就显示不了或者将就点不了了
要将自己创建的窗口置父到外部的D3D窗口,可以使用win32gui.SetParent()函数将自己创建的窗口设置为外部D3D窗口的子窗口。
下面是一个示例代码:
import win32gui
# 获取外部D3D窗口的句柄
d3d_hwnd = win32gui.FindWindow(None, "D3D窗口标题")
# 创建自己的窗口
my_hwnd = win32gui.CreateWindowEx(
win32con.WS_EX_CONTROLPARENT, # 扩展样式
"MyWindowClass", # 窗口类名
"My Window", # 窗口标题
win32con.WS_OVERLAPPEDWINDOW, # 窗口样式
win32con.CW_USEDEFAULT, # 窗口初始位置
win32con.CW_USEDEFAULT, # 窗口初始位置
500, # 窗口宽度
500, # 窗口高度
None, # 父窗口句柄
None, # 菜单句柄
hInst, # 程序实例句柄
None # 创建参数
)
# 将自己的窗口置父到外部D3D窗口
win32gui.SetParent(my_hwnd, d3d_hwnd)
请注意,这种方法只适用于将普通窗口置父到外部D3D窗口,并不能保证在所有情况下都能正常工作。如果窗口不显示或无法操作,可能是因为D3D窗口的特殊性导致的。在这种情况下,可能需要使用其他方法或技术来实现你的需求
原文地址: https://www.cveoy.top/t/topic/i0wT 著作权归作者所有。请勿转载和采集!