Моя конечная цель — создать окно без полей с изменяемым размером, используя pywebview. Я использую Windows и WinForms. Я могу сделать это без полей, сделав это:
webview.winforms.BrowserView.instance.browser.FormBorderStyle = 0
Тем не менее, я хотел бы иметь возможность перемещать его и изменять его размер. Чтобы сделать это обычным образом в C#, я могу переопределить метод WndProc
в производном классе Form и вызывать сообщения об изменении размера. Я не уверен, как это сделать в Python. Форма в pywebview определена здесь.
Я не могу установить self.WndProc
в соответствии со своим определением; Я получаю AttributeError : attribute is read-only
. Я попытался подключиться непосредственно к нему следующим образом (в определении формы):
WndProcType = ctypes.WINFUNCTYPE(c_int, c_long, c_int, c_int, c_int)
GWL_WNDPROC = -4
handle = windll.kernel32.GetModuleHandleW(None)
self.oldWndProc = self.WndProc
ctypes.windll.user32.SetWindowLongW(handle, GWL_WNDPROC, WndProcType(self.MyWndProc))
def MyWndProc(self, hWnd, msg, wParam, lParam):
print ("is it working?")
return CallWindowProc(
self.oldWndProc,
hWnd,
msg,
wParam,
lParam
)
Но вроде не звонят.