Hallo,
ok, ich konnte es zumindest eingrenzen. In der OnLoad-Methode des Formulars (Form1) steht folgender Code:
C#-Quelltext
1: 2: 3: 4:
| pb.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint); this.Controls.Add(pb); pb.Width = 10000; pb.Height = 10000; |
Damit wird der Bereich, in welchem dann später die OnPaint-Methode regelmäßig zeichnet oder zeichnen kann, mit 10000x10000 definiert. Somit ist der Bildschirm also immer (mehr als) voll ausgefüllt. Reduziere ich z.B. diesen Bereich testhalber auf 100x100, dann reagiert der Bereich auf Mausklicks, auf dem nicht gezeichnet wird, der also außerhalb dieses Bereichs liegt.
Testhalber habe ich in das OnClick-Ereignis einfach mal geschrieben:
C#-Quelltext
1: 2: 3: 4:
| public void Form1_Click(object sender, EventArgs e) { Close(); } |
Mausklicks und Zeichnen auf diese Fläche geht offenbar nicht gleichzeitig. Das Programm müsste sich also bei einem Mausklick testhalber beenden, was es aber nicht macht.
Danke schonmal für weitere Tipps!
Moderiert von
Th69: C#-Tags hinzugefügt