public TransparentForm() { InitializeComponent(); //setting this.ShowInTaskbar = false; SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.OptimizedDoubleBuffer, true); SetStyle(ControlStyles.SupportsTransparentBackColor, true); this.BackColor = Color.DarkMagenta; this.TransparencyKey = this.BackColor; this.TopMost = true; this.Opacity = 0.5; screenLeft = SystemInformation.VirtualScreen.Left; screenTop = SystemInformation.VirtualScreen.Top; screenWidth = SystemInformation.VirtualScreen.Width; screenHeight = SystemInformation.VirtualScreen.Height; this.Size = new Size(screenWidth, screenHeight); //end of setting this.Paint += Form2_Paint; pointStart = null; //time lable timeL.BackColor = Color.LightBlue; timeL.Hide(); //capture panel capturePanel = new MyCapturePanel(this) { }; capturePanel.BackColor = Color.Green; capturePanel.Visible = false; capturePanel.btnStartCapture = btnStartCapture; //start capture button btnStartCapture = new Button(); btnStartCapture.BackColor = Color.DeepPink; btnStartCapture.Click += B_ClickAsync; btnStartCapture.Visible = false; btnStartCapture.Text = "OK"; Controls.Add(capturePanel); Controls.Add(btnStartCapture); action = Action.OK; }
private void Form2_Paint(object sender, PaintEventArgs e) { g = e.Graphics; Point pointA = new Point(); Point pointB = new Point(); // DrawAPlus(pointCurrent, g); // if (isMouseDrag) { //drawing start point if (pointStart != null && !pointCurrent.Equals((Point)pointStart)) { var _ptStart = (Point)pointStart; DrawAPlus(_ptStart, g); using (Brush brush = new SolidBrush(this.BackColor)) { var varStart = new Point(); var varEnd = new Point(); if (_ptStart.Y > pointCurrent.Y) { varStart = pointCurrent; varEnd = _ptStart; } else { varStart = _ptStart; varEnd = pointCurrent; } if (varStart.X > varEnd.X) { //swapping int i = varStart.X; varStart.X = varEnd.X; varEnd.X = i; } if (!capturePanel.IsDisposed) { capturePanel.Visible = false; capturePanel.Dispose(); } capturePanel = new MyCapturePanel(this) { Location = varStart, Size = new Size(Math.Abs(varEnd.X - varStart.X), Math.Abs(varEnd.Y - varStart.Y)), BackColor = Color.DarkMagenta, btnStartCapture = btnStartCapture }; if (!Controls.Contains(capturePanel)) { Controls.Add(capturePanel); } capturePanel.Visible = true; //using (Button b = new Button()) //{ // Button b = new Button() // { // Location = new Point(0, 0), // }; // if (!capturePanel.Controls.Contains(b)) // { // capturePanel.Controls.Add(b); // b.Show(); // } // b.Click += B_ClickAsync; //} //g.FillRectangle(brush, // new Rectangle(varStart.X, varStart.Y, // Math.Abs(varEnd.X - varStart.X), Math.Abs(varEnd.Y - varStart.Y))); } } } }