Ich möchte gerne eine Color Picker bauen. Dieser wird durch einen Timer aktualisiert und soll beendet werden durch ein Mouse Button. Mouse Button Events bekomme ich jedoch nur innerhalb einer Form, eines Button oder Ähnlichem. Ich möchte aber, das die Aktualisierung außerhalb der Form unterbrochen wird. Ich könnte irgendwo auf den Hintergrund von Windows klicken und der Timer wird beendet... aber wie?
public Form1()
{
InitializeComponent();
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
Graphics myGraphics = this.CreateGraphics();
Bitmap memoryImage = new Bitmap(1, 1, myGraphics);
Graphics memoryGraphics = Graphics.FromImage(memoryImage);
memoryGraphics.CopyFromScreen(Cursor.Position.X, Cursor.Position.Y, 0, 0, new Size(1, 1));
Color color = memoryImage.GetPixel(0, 0);
label1.Text = color.ToString();
}
Dann solltest du das Form.Deactivate-Ereignis dafür benutzen.