【初心者】課題をクリアしていくスレ【講習会】at GAMEDEV【初心者】課題をクリアしていくスレ【講習会】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト565:名前は開発中のものです。 06/06/08 15:32:16 l70M6MGX がんばれ~ 566:名前は開発中のものです。 06/06/10 20:16:40 0j3Y3Eu0 >>565 がんがる~ 課題スレVB2005課題5キー入力 http://gamdev.org/up/img/6099.phps キー入力とバックバッファをやった GetAsyncKeyStateを使う方法もあるらしいけど 今回はwikiのヒントにあった_KeyDownを使った まとめ ・Formにコンポーネントを乗せるとKeyDownなどのイベントプロシージャが実行されなくなる場合がある これに対処するにはFormのKeyPreviewをTrueにする ・KeyDownでフラグをTrue、KeyUpでフラグをFalseにする こうすることでキーを押しっぱなしにしたときにKeyDownが連続で発生してもキーが現在、押下状態かどうか判断できる ・バックバッファはBackBuffer = New Bitmap(640, 480)でビットマップを作って利用 ・ビットマップになにか描画したいときはBBGraphics = Graphics.FromImage(BackBuffer)でBBGraphicsを使う ・ビットマップを描画画面に転送するのはformGraphics.DrawImage(BackBuffer, 0, 0) Timer以外でメインループを作る方法が見つからないorz win32のPeekMessageやDelphiのOnIdleみたいな方法ないのかなぁ…… Application.DoEvents()を挟んでビジーループでいいのかな System.Threading.Thread.SleepでSleepの替わりにもなりそうだし 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch