private void Form2_Load(object sender, EventArgs e) { m_dtLastDownPrt = DateTime.Now; m_keyHook = new KeyHook(); m_keyHook.KeyHookEvent += m_keyHook_KeyHookEvent; m_keyHook.SetHook(); contextMenuStrip1.Renderer = new DevCapture.ToolStripRendererEx(); if (System.IO.Directory.Exists("./Plugins")) { string strRet = FrmCapture.LoadPlugins("./Plugins"); if (strRet != "OK") { MessageBox.Show(strRet, "DevCapture"); } } FrmCapture.RecordError += (s, args) => new FrmTextAlert(args.ErrorMessage).Show(); notifyIcon1.Visible = true; //托盘来一个气泡提示 notifyIcon1.ShowBalloonTip(30, "DevCapture", "DevCapture启动运行", ToolTipIcon.Info); this.Opacity = 0; string strFileName = Application.StartupPath + "/DevCaptureSetting.cfg"; if (File.Exists(strFileName) && this.LoadSetting(strFileName)) { this.BeginInvoke(new MethodInvoker(() => this.Visible = false)); return; } this.BeginInvoke(new MethodInvoker(() => { Thread.Sleep(500); Application.DoEvents(); this.ToggleWindow(); })); }
//如果要捕获鼠标 对PrtScr键进行拦截 private void m_keyHook_KeyHookEvent(object sender, KeyHookEventArgs e) { if (e.KeyCode == (int)Keys.PrintScreen && checkBox_CaptureCursor.Checked) { if (DateTime.Now.Subtract(m_dtLastDownPrt).TotalMilliseconds > 500) { FrmCapture.DrawCurToScreen(); //如果按下不松开会一直触发 } m_dtLastDownPrt = DateTime.Now; //下面是尝试了些在桌面绘制了鼠标之后然后将画上去的鼠标刷掉 结果貌似失败了 算了 //Console.WriteLine(rect.ToString()); //Win32.LPRECT lpRect = new Win32.LPRECT() { // Left = rect.Left, Top = rect.Top, // Right = rect.Right, Bottom = rect.Bottom //}; //IntPtr desk = Win32.GetDesktopWindow(); //IntPtr deskDC = Win32.GetDCEx(desk, IntPtr.Zero, 0x403); //Graphics g = Graphics.FromHdc(deskDC); //g.FillRectangle(new SolidBrush(Color.FromArgb(128, Color.Red)), new Rectangle(100, 100, 400, 400)); //Console.WriteLine(Win32.RedrawWindow(IntPtr.Zero, ref lpRect, IntPtr.Zero, 0x85)); //Console.WriteLine((Win32.RDW_INTERNALPAINT | Win32.RDW_INVALIDATE | Win32.RDW_NOERASE).ToString("X")); //Console.WriteLine(Win32.InvalidateRect(Win32.GetDesktopWindow(), ref lpRect, false)); //Console.WriteLine(lpRect.Left + " " + lpRect.Top + " " + lpRect.Right + " " + lpRect.Bottom); } }
private void StartCapture(bool bFromClip) { if (m_frmCapture == null || m_frmCapture.IsDisposed) { m_frmCapture = new FrmCapture(m_bCaptureCur, bFromClip); } m_frmCapture.Show(); }
private void StartCapture() { if (m_frmCapture == null || m_frmCapture.IsDisposed) { m_frmCapture = new FrmCapture(txtSend); } m_frmCapture.IsCaptureCursor = false; m_frmCapture.Show(); }
private void StartCapture() { if (m_frmCapture == null || m_frmCapture.IsDisposed) { m_frmCapture = new FrmCapture(); } m_frmCapture.IsCaptureCursor = false; m_frmCapture.FormClosing += m_frmCapture_FormClosing; m_frmCapture.Show(); }
//启动截图 private void StartCapture(bool bFromClip) { if (m_frmCapture == null || m_frmCapture.IsDisposed) { m_frmCapture = new FrmCapture(); } m_frmCapture.IsCaptureCursor = checkBox_CaptureCursor.Checked; m_frmCapture.IsFromClipBoard = bFromClip; m_frmCapture.Show(); }
private void button1_Click_1(object sender, EventArgs e) { //this.Enabled = false; //FrmCapture.ImgProcessBox = new ImageProcessBox(); FrmCapture frmC = new FrmCapture(); //frmC.IsCaptureCursor = true; //是否捕获鼠标 //frmC.ImgProcessBoxIsShowInfo = true; //是否绘制图像信息显示 //frmC.ImgProcessBoxDotColor = Color.Yellow; //操作框点的颜色 //frmC.ImgProcessBoxLineColor = Color.Cyan; //操作框边框的颜色 //frmC.ImgProcessBoxMagnifySize = new System.Drawing.Size(15, 15);//信息的原始图像大小 //frmC.ImgProcessBoxMagnifyTimes = 7; //信息放大的倍数 frmC.Show(); }
//截图方法 private void StartCapture() { FrmCapture imageCapturer = new FrmCapture(); if (imageCapturer.ShowDialog() == System.Windows.Forms.DialogResult.OK) { System.Windows.Forms.IDataObject iData = Clipboard.GetDataObject(); if (iData.GetDataPresent(DataFormats.Bitmap)) //如果剪贴板中的数据是文本格式 { GifBox gif = this.chatBoxSend.InsertImage((Bitmap)iData.GetData(DataFormats.Bitmap)); this.chatBoxSend.Focus(); this.chatBoxSend.ScrollToCaret(); imageCapturer.Close(); imageCapturer = null; } } }
private void toolStripSplitButton2_ButtonClick(object sender, EventArgs e) { if (m_frmCapture == null || m_frmCapture.IsDisposed) m_frmCapture = new FrmCapture(rtbEdit); m_frmCapture.IsCaptureCursor = false; m_frmCapture.Show(); }
private void PictureBox2_Click(object sender, EventArgs e) { FrmCapture frmC = new FrmCapture(); frmC.Show(); }