Просмотр исходного кода

不开启中键启动时不再占用线程

liufei 3 лет назад
Родитель
Сommit
caf75e2427

+ 1 - 1
Control/UserControls/Config/MotionControl.xaml

@@ -41,7 +41,7 @@
             </hc:UniformSpacingPanel>
 
             <hc:UniformSpacingPanel Spacing="10" Margin="10,5,0,0" Grid.ColumnSpan="4">
-                <CheckBox  Content="鼠标中间呼出" Checked="MouseMiddle_Changed" IsChecked="{Binding MouseMiddleShow}">
+                <CheckBox  Content="鼠标中间呼出" Checked="MouseMiddle_Changed" Unchecked="MouseMiddle_Changed" IsChecked="{Binding MouseMiddleShow}">
                     <CheckBox.Background>
                         <LinearGradientBrush EndPoint="1,0" StartPoint="0,0">
                             <GradientStop Color="#FF9EA3A6"/>

+ 8 - 1
Control/UserControls/Config/MotionControl.xaml.cs

@@ -1,5 +1,6 @@
 using GeekDesk.Constant;
 using GeekDesk.Control.Windows;
+using GeekDesk.Thread;
 using GeekDesk.Util;
 using GeekDesk.ViewModel;
 using HandyControl.Data;
@@ -280,7 +281,13 @@ namespace GeekDesk.Control.UserControls.Config
         /// <param name="e"></param>
         private void MouseMiddle_Changed(object sender, RoutedEventArgs e)
         {
-     
+            if (appConfig.MouseMiddleShow)
+            {
+                MouseHookThread.MiddleHook();
+            } else
+            {
+                MouseHookThread.Dispose();
+            }
         }
 
         private void HookListener_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)

+ 8 - 2
MainWindow.xaml.cs

@@ -107,7 +107,10 @@ namespace GeekDesk
             }
 
             //注册鼠标中键监听事件
-            MouseHookThread.MiddleHook();
+            if (appData.AppConfig.MouseMiddleShow)
+            {
+                MouseHookThread.MiddleHook();
+            }
 
             //更新线程开启  检测更新
             UpdateThread.Update();
@@ -396,7 +399,10 @@ namespace GeekDesk
         /// <param name="e"></param>
         private void ExitApp(object sender, RoutedEventArgs e)
         {
-            MouseHookThread.Dispose();
+            if (appData.AppConfig.MouseMiddleShow)
+            {
+                MouseHookThread.Dispose();
+            }
             Application.Current.Shutdown();
         }