|
|
@@ -27,9 +27,8 @@ void CValueWnd::Init()
|
|
|
//抢焦点
|
|
|
std::thread(&CValueWnd::TopMostWnd, this).detach();
|
|
|
|
|
|
- //注册组合键
|
|
|
- int nRet = RegisterHotKey(m_hWnd, 1, MOD_CONTROL, 'D');
|
|
|
- int b = nRet;
|
|
|
+ //注册热键
|
|
|
+ UpdateRegisterHotKey();
|
|
|
|
|
|
//添加托盘图标
|
|
|
AddTrayIcon();
|
|
|
@@ -363,6 +362,8 @@ LRESULT CValueWnd::OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandl
|
|
|
**/
|
|
|
LRESULT CValueWnd::OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
|
|
{
|
|
|
+ UnregisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN);
|
|
|
+
|
|
|
bHandled = FALSE;
|
|
|
return 0;
|
|
|
}
|
|
|
@@ -436,12 +437,6 @@ LRESULT CValueWnd::OnRButtonDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL&
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-LRESULT CValueWnd::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
|
|
-{
|
|
|
- bHandled = FALSE;
|
|
|
- return 0;
|
|
|
-}
|
|
|
-
|
|
|
LRESULT CValueWnd::OnKexianUpdate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
|
|
{
|
|
|
//如果当前不是串口模式,直接忽略
|
|
|
@@ -538,10 +533,6 @@ LRESULT CValueWnd::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|
|
lRes = OnHotKey(uMsg, wParam, lParam, bHandled);
|
|
|
break;
|
|
|
|
|
|
- case WM_KEYDOWN:
|
|
|
- lRes = OnKeyDown(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
-
|
|
|
default:
|
|
|
bHandled = FALSE;
|
|
|
}
|
|
|
@@ -640,14 +631,16 @@ LRESULT CValueWnd::OnTrayIcon(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHa
|
|
|
|
|
|
LRESULT CValueWnd::OnHotKey(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
|
|
{
|
|
|
- UINT fuModifiers = (UINT)LOWORD(lParam);
|
|
|
- UINT uVirtKey = (UINT)HIWORD(lParam);
|
|
|
+ UINT fuModifiers = (UINT)LOWORD(lParam);
|
|
|
+ UINT uVirtKey = (UINT)HIWORD(lParam);
|
|
|
|
|
|
//判断响应了什么热键
|
|
|
- if (MOD_CONTROL == fuModifiers && 'D' == uVirtKey)
|
|
|
+ if (wParam == WM_MYHOTKEY_SHOUKUAN)
|
|
|
{
|
|
|
- //按了CTRL + D
|
|
|
- ShowShoukuan();
|
|
|
+ if (m_is_show_setting == false)
|
|
|
+ {
|
|
|
+ ShowShoukuan();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
bHandled = TRUE;
|
|
|
@@ -960,4 +953,17 @@ void CValueWnd::ConfirmOcrWnd(RECT rect)
|
|
|
tesseract::TessBaseAPI& CValueWnd::GetTess()
|
|
|
{
|
|
|
return m_tess;
|
|
|
+}
|
|
|
+
|
|
|
+bool CValueWnd::UpdateRegisterHotKey()
|
|
|
+{
|
|
|
+ UINT shoukuan_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shoukuan_mod").c_str());
|
|
|
+ UINT shoukuan_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shoukuan_vk").c_str());
|
|
|
+
|
|
|
+ //先卸载旧的,再注册新的
|
|
|
+ UnregisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN);
|
|
|
+
|
|
|
+ int nRet = RegisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN, shoukuan_mod, shoukuan_vk);
|
|
|
+
|
|
|
+ return nRet;
|
|
|
}
|