* UIForm: 修复继承页面可响应WM_HOTKEY消息
This commit is contained in:
parent
d15b52d414
commit
867cc89b89
@ -41,6 +41,7 @@
|
|||||||
* 2022-08-25: V3.2.3 重构多页面框架传值删除SetParamToPage
|
* 2022-08-25: V3.2.3 重构多页面框架传值删除SetParamToPage
|
||||||
* 2022-08-25: V3.2.3 重构多页面框架传值:框架发送给页面 SendParamToPage 函数
|
* 2022-08-25: V3.2.3 重构多页面框架传值:框架发送给页面 SendParamToPage 函数
|
||||||
* 2022-08-25: V3.2.3 重构多页面框架传值:接收页面传值 ReceiveParams 事件
|
* 2022-08-25: V3.2.3 重构多页面框架传值:接收页面传值 ReceiveParams 事件
|
||||||
|
* 2022-09-11: V3.2.3 修复继承页面可响应WM_HOTKEY消息
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
@ -1681,7 +1682,6 @@ namespace Sunny.UI
|
|||||||
return cp;
|
return cp;
|
||||||
}
|
}
|
||||||
|
|
||||||
cp.ExStyle |= 0x02000000;
|
|
||||||
return base.CreateParams;
|
return base.CreateParams;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1725,6 +1725,7 @@ namespace Sunny.UI
|
|||||||
public void UnRegisterHotKey(Sunny.UI.ModifierKeys modifierKey, Keys key)
|
public void UnRegisterHotKey(Sunny.UI.ModifierKeys modifierKey, Keys key)
|
||||||
{
|
{
|
||||||
if (hotKeys == null) return;
|
if (hotKeys == null) return;
|
||||||
|
|
||||||
int id = HotKey.CalculateID(modifierKey, key);
|
int id = HotKey.CalculateID(modifierKey, key);
|
||||||
if (hotKeys.ContainsKey(id))
|
if (hotKeys.ContainsKey(id))
|
||||||
{
|
{
|
||||||
@ -1741,24 +1742,23 @@ namespace Sunny.UI
|
|||||||
|
|
||||||
protected override void WndProc(ref Message m)
|
protected override void WndProc(ref Message m)
|
||||||
{
|
{
|
||||||
switch (m.Msg)
|
if (m.Msg == Win32.User.WM_ERASEBKGND)
|
||||||
{
|
{
|
||||||
case Win32.User.WM_ERASEBKGND:
|
|
||||||
m.Result = IntPtr.Zero;
|
m.Result = IntPtr.Zero;
|
||||||
break;
|
return;
|
||||||
|
|
||||||
case Win32.User.WM_HOTKEY:
|
|
||||||
int hotKeyId = (int)(m.WParam);
|
|
||||||
if (hotKeys.ContainsKey(hotKeyId))
|
|
||||||
HotKeyEventHandler?.Invoke(this, new HotKeyEventArgs(hotKeys[hotKeyId], DateTime.Now));
|
|
||||||
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
base.WndProc(ref m);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (m.Msg == Win32.User.WM_HOTKEY)
|
||||||
|
{
|
||||||
|
int hotKeyId = (int)(m.WParam);
|
||||||
|
if (hotKeys != null && hotKeys.ContainsKey(hotKeyId))
|
||||||
|
{
|
||||||
|
HotKeyEventHandler?.Invoke(this, new HotKeyEventArgs(hotKeys[hotKeyId], DateTime.Now));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
base.WndProc(ref m);
|
||||||
|
|
||||||
if (m.Msg == Win32.User.WM_NCHITTEST && ShowDragStretch && WindowState == FormWindowState.Normal)
|
if (m.Msg == Win32.User.WM_NCHITTEST && ShowDragStretch && WindowState == FormWindowState.Normal)
|
||||||
{
|
{
|
||||||
//Point vPoint = new Point((int)m.LParam & 0xFFFF, (int)m.LParam >> 16 & 0xFFFF);
|
//Point vPoint = new Point((int)m.LParam & 0xFFFF, (int)m.LParam >> 16 & 0xFFFF);
|
||||||
@ -1771,7 +1771,8 @@ namespace Sunny.UI
|
|||||||
m.Result = (IntPtr)Win32.User.HTTOPLEFT;
|
m.Result = (IntPtr)Win32.User.HTTOPLEFT;
|
||||||
else if (vPoint.Y >= ClientSize.Height - dragSize)
|
else if (vPoint.Y >= ClientSize.Height - dragSize)
|
||||||
m.Result = (IntPtr)Win32.User.HTBOTTOMLEFT;
|
m.Result = (IntPtr)Win32.User.HTBOTTOMLEFT;
|
||||||
else m.Result = (IntPtr)Win32.User.HTLEFT;
|
else
|
||||||
|
m.Result = (IntPtr)Win32.User.HTLEFT;
|
||||||
}
|
}
|
||||||
else if (vPoint.X >= ClientSize.Width - dragSize)
|
else if (vPoint.X >= ClientSize.Width - dragSize)
|
||||||
{
|
{
|
||||||
@ -1779,7 +1780,8 @@ namespace Sunny.UI
|
|||||||
m.Result = (IntPtr)Win32.User.HTTOPRIGHT;
|
m.Result = (IntPtr)Win32.User.HTTOPRIGHT;
|
||||||
else if (vPoint.Y >= ClientSize.Height - dragSize)
|
else if (vPoint.Y >= ClientSize.Height - dragSize)
|
||||||
m.Result = (IntPtr)Win32.User.HTBOTTOMRIGHT;
|
m.Result = (IntPtr)Win32.User.HTBOTTOMRIGHT;
|
||||||
else m.Result = (IntPtr)Win32.User.HTRIGHT;
|
else
|
||||||
|
m.Result = (IntPtr)Win32.User.HTRIGHT;
|
||||||
}
|
}
|
||||||
else if (vPoint.Y <= dragSize)
|
else if (vPoint.Y <= dragSize)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user