サークルオブジェクトを作成し、それをベロシティで画面に配置し、ボーダー内で跳ね返りたいと思っています。サークルクラスをセットアップすることはできますが、オブジェクトをペイントする方法(後で複数のものをクリックすると、より多くの円オブジェクトが得られます)と動きを表示する方法はありますか?オブジェクトを作成し、移動中にペイントするにはどうすればよいですか?
答えて
描画は、.NET(WFA、WPF、およびXNAフレームワーク)で少なくとも3つの異なる方法で実行できます。この回答では、最も単純なWinFormsアプリケーションを使用していると仮定します。
.NETでのカスタムシェイプの描画/ペイントは、Graphics
クラスを使用して行います。すべてのフォームコントロールには、CreateGraphics()
メソッドがあります。このメソッドは、メソッドを呼び出すコントロールのサイズと位置を画面上の「ボックス」への参照を提供します。そのGraphics
インスタンスを使用すると、さまざまなDrawメソッド(DrawCircle()
など)を呼び出して、図形を画面に配置できます。 Pen
、Brush
およびColor
オブジェクトを読み上げる必要があります。彼らはあなたの円の枠線、塗りつぶし、および色を定義することができます。描画ロジックをコントロールのOnPaint()
メソッドに配置します。このメソッドは、ウィンドウが再描画するように指示されたときに呼び出されます。オブジェクトを定期的に移動させるには、一定の間隔でTimer
を設定し、移動ロジックを実行するハンドラーでそのTick
イベントを登録します。あなたが一度移動した後は、Graphicsハンドルを持っているコントロールのInvalidate()
に電話してください。コントロール自体が再描画されます。自分自身を再塗りつぶしするコントロールは、すべてのネストされたコントロールに自身を再描画するように指示するので、フォーム全体、または他の入れ子になったコントロールを配置するコントロールのグラフィックハンドルを取得することは避けます。 Panel
またはPictureBox
は、フォームウィンドウでスパンを占有するカスタムグラフィックスのための方法です。 BufferedGraphicsContext
オブジェクトを使用してダブルバッファリングされたグラフィックを実装するか、またはの画像として設定したBitmap
に独自の図形を描画して、独自の図形を作成することもできます。
スタートフォーム上のメソッドをオーバーライドするのOnPaintとし、これは特定のサブトピックの多くが付いている幅広い問題の一種である
がprotected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawEllipse(new Pen(Color.Red), 0, 0, 100, 100);
}
- 1. PyQt5:ボタンをクリックしてペイントを移動するにはどうすればいいですか?
- 2. Network.HTTP.Conduit.Requestオブジェクトを作成するにはどうすればよいですか?
- 3. オブジェクト参照を作成するにはどうすればよいですか?
- 4. PHPでは、オブジェクトを作成してオブジェクトに追加するにはどうすればよいですか?
- 5. 他のオブジェクトを再描画せずにオブジェクトを移動するにはどうすればよいですか?
- 6. 別のドキュメントを作成中にドキュメントにフィールドを作成するにはどうすればよいですか?
- 7. 「ページに移動」フォームを作成するにはどうすればよいですか?
- 8. eclipseで中括弧({})の自動作成を無効にするにはどうすればよいですか?
- 9. .each()内で一意のオブジェクトを動的に作成するにはどうすればよいですか?
- 10. pygameで多くの移動可能なテキストボックスを作成するにはどうすればよいですか?
- 11. ポップアップウィンドウを起動したら、ページの中央に移動するにはどうすればいいですか?
- 12. 動的URLを作成するにはどうすればよいですか?
- 13. 動的ルートを作成するにはどうすればよいですか?
- 14. Javaで異なる速度で移動する複数のオブジェクトをペイントするにはどうすればよいですか?
- 15. プラグインで作成した移行ではどうすればよいですか?
- 16. 動的に作成された 'el'でバックボーンビューを作成するにはどうすればよいですか?
- 17. フッターを右に移動するにはどうすればよいですか?
- 18. イメージファイルをフォルダに移動するにはどうすればよいですか?
- 19. iOSでGoogleマップの移動に伴いマーカーを移動するにはどうすればよいですか?
- 20. 入力中にプレースホルダをフォーカスの上に移動するにはどうすればよいですか?
- 21. 移動中に静的ファイルを非表示にするにはどうすればよいですか?
- 22. 遷移の途中でオブジェクトの位置を取得するにはどうすればよいですか?
- 23. C++でポインタを移動するにはどうすればよいですか?
- 24. IntelliJでツールバーを移動するにはどうすればよいですか?
- 25. node.jsでファイルを移動するにはどうすればよいですか?
- 26. iPhoneでMkMapView.userLocationを移動するにはどうすればよいですか?
- 27. 動的に作成されたマテリアライズトーストツールチップのリスナーを作成するにはどうすればよいですか?
- 28. クラステーブルからオブジェクトを作成するにはどうすればよい?
- 29. デスクトップツールバーの下でプログラムウィンドウを移動しないようにするにはどうすればよいですか?
- 30. オブジェクトを斜めにジグザグに移動するにはどうすればよいですか?
を描画ロジックを追加します。あなたは、あなたの質問を分かち書きに焦点を絞った質問に分割したいかもしれません。 – asawyer
WinForms、APS、WPF、またはSilverlightを使用していますか? –
これはWinFormsにあります。 – akd