private void WindowEditFun(object sender, EventArgs e) { if (flowWindow.AllowsTransparency && e != EventArgs.Empty && flowWindow.IsLoaded)//编辑模式 { flowWindow.Close(); flowWindow = new FlowWindow() { AllowsTransparency = false, WindowStyle = WindowStyle.SingleBorderWindow, Top = double.Parse(iniData["FlowWindow"]["FlowWindowTop"]) - topOffset, Left = double.Parse(iniData["FlowWindow"]["FlowWindowLeft"]) - leftOffset }; flowWindow.Closed += delegateInstance; flowWindow.Show(); } else if (!flowWindow.AllowsTransparency) { iniData["FlowWindow"]["FlowWindowTop"] = (flowWindow.Top + topOffset).ToString(); iniData["FlowWindow"]["FlowWindowLeft"] = (flowWindow.Left + leftOffset).ToString(); parser.WriteFile("conf.ini", iniData); flowWindow.Closed -= delegateInstance; flowWindow.Close(); flowWindow = new FlowWindow() { AllowsTransparency = true, WindowStyle = WindowStyle.None, Top = double.Parse(iniData["FlowWindow"]["FlowWindowTop"]), Left = double.Parse(iniData["FlowWindow"]["FlowWindowLeft"]) }; flowWindow.Show(); } }
/// <summary> /// 切换弹窗事件触发 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Switch(object sender, EventArgs e) { if (flowWindow.IsVisible) { WindowEdit.Visibility = Visibility.Hidden; flowWindow.Hide(); } else { if (!flowWindow.IsLoaded) { flowWindow.Close(); flowWindow = new FlowWindow() { Top = double.Parse(iniData["FlowWindow"]["FlowWindowTop"]), Left = double.Parse(iniData["FlowWindow"]["FlowWindowLeft"]) }; } WindowEdit.Visibility = Visibility.Visible; flowWindow.Show(); } if (e == null) { chkSwitch.IsChecked = (bool)chkSwitch.IsChecked ? false : true; } }
public MainWindow() { InitializeComponent(); #region 多开判断 //获取当前活动进程的模块名称 string moduleName = Process.GetCurrentProcess().MainModule.ModuleName; //返回指定路径字符串的文件名 string processName = System.IO.Path.GetFileNameWithoutExtension(moduleName); //根据文件名创建进程资源数组 Process[] processes = Process.GetProcessesByName(processName); //如果该数组长度大于1,说明多次运行 if (processes.Length > 1) { MessageBox.Show("不允许多开", "提示", MessageBoxButton.OK, MessageBoxImage.Information); this.Close();//关闭当前窗体 return; } #endregion #region 获取ini文件并读取Key值 iniData = parser.ReadFile("conf.ini"); if (iniData != null) { TopKey = iniData["key"]["Top"].ToLower(); JugKey = iniData["key"]["Jug"].ToLower(); MidKey = iniData["key"]["Mid"].ToLower(); BotKey = iniData["key"]["Bot"].ToLower(); SupKey = iniData["key"]["Sup"].ToLower(); SwitchKey = iniData["key"]["Switch"].ToLower(); DecimalKey = iniData["key"]["Decimal"].ToLower(); AddKey = iniData["key"]["Add"].ToLower(); SubtractKey = iniData["key"]["Subtract"].ToLower(); } #endregion #region 注册热键 delegateInstance = new System.EventHandler(WindowEditFun); hook_Main.OnKeyDown += new System.Windows.Forms.KeyEventHandler(Hook_MainKeyDown); try { bool flag = hook_Main.InstallHook("1"); if (!flag) { MessageBox.Show("热键注册失败 error code:3", "提示", MessageBoxButton.OKCancel, MessageBoxImage.Error); } } catch (Exception e) { MessageBox.Show(e.Message + " error code:1", "提示", MessageBoxButton.OKCancel, MessageBoxImage.Error); } #endregion flowWindow = new FlowWindow(); Switch(null, null); //按一下弹窗复选框按钮 GameButton_Click(new object(), new RoutedEventArgs()); //按一下游戏开始按钮 voice = new SpeechSynthesizer { Volume = 100 }; }