回答編集履歴
1
最初の説明が端折りすぎだったのでちょっと修正
answer
CHANGED
@@ -1,5 +1,6 @@
|
|
1
|
-
`CreateGraphics`は`Paint`イベントに反映されないため、Paintイベント発生時に消されてしまいます。ですので`Load`イベントで描画しようとしても、直後のPaintイベントで消えてしまっているのです。ボタン押下で描画できているとしていますが、他のアプリのウィンドウをかぶせたりしてPaintイベントを発生させると消えてしまいます。
|
1
|
+
`CreateGraphics`メソッドで取得したGraphicsオブジェクトに対して描画した内容は`Paint`イベントに反映されないため、Paintイベント発生時に消されてしまいます。ですので`Load`イベントで描画しようとしても、直後のPaintイベントで消えてしまっているのです。ボタン押下で描画できているとしていますが、他のアプリのウィンドウをかぶせたりしてPaintイベントを発生させると消えてしまいます。
|
2
2
|
|
3
|
+
|
3
4
|
PictureBoxにグラフィックを描画するときは、`Image`プロパティにクライアント領域と同じサイズの`Bitmap`オブジェクトを設定し、そこに描画してください。
|
4
5
|
|
5
6
|
コード例です。
|