我试图在启动时启动一个表单,并让它在我的应用程序运行的整个过程中一直作为背景。本质上,我想隐藏所有桌面图标并拥有空白背景。此外,当用户单击某些按钮时,我希望表单 BackColor 发生变化。
我搜索了一堆,我一直在寻找一半的解决方案。这是我迄今为止尝试过的:
创建了一个覆盖 WndProc 事件的 BackBaseForm,如果它WM_WINDOWPOSCHANGING
,我不调用base.WndProc(ref m)
,而是发送以下消息:
SetWindowPos(Handle, new IntPtr(1), 0, 0, this.width, this.height, SWP_NOZORDER);
但是,每当我单击表单时,它仍然会将其带到前面。我还尝试创建一个WINDOWPOS
结构,编组指向该结构的指针,然后修改该结构。我不认为这会改变lParam
消息中的实际情况。