0

私はコネクトフォーチャンピオンシップゲームを持っています。テキストをアニメーションで表示する方法はありますか?つまり、各ラウンドの表示後、画面にラウンド1が書き込まれます。ラウンド1がオーバー表示された後、ラウンド2が表示されます。

つまり、テキストをラベルとしてではなく、オンラインゲームのように、画面に表示されて数秒後に消えるテキストを表示するということです。それが可能かどうかはわかりません。

4

2 に答える 2

2

ゲームに勝ったときにフォーム Graphics オブジェクトを取得して、フォームに手動で描画する必要があります。

Graphics g = this.CreateGraphics();
g.DrawString("Game Won!", DefaultFont, Brushes.Red, x,y);

これはコンテキスト内のフォームであり、x、y はテキストを描画するための座標です

もちろん、他の人が言及しているように、x、y、またはアニメーションフレームごとのフォントサイズなどのその他のプロパティを変更するタイマーを実行する必要があります。別のスレッドでそれを行い、結果をダブルバッファリングする必要があります

于 2012-12-04T18:21:49.520 に答える
0

アニメーションの正確な意味はわかりませんが、一般的には、20ミリ秒ごとなど、テキストをアニメーション化する方法で「アニメーション化」するタイマーを作成できます。したがって、たとえば、テキストを単に右から左に移動したい場合はmyText.X += 5、タイマー経過ハンドラーで設定するか、同様のことを行います。

于 2012-12-04T18:05:10.467 に答える