「ラブライブ!」TVアニメ2期 アニメーションPV集 前編【スクスタリリース記念!】
アニメ『ラブライブ!2期』
1期面白かったです。何かを目標にするのって大事ですね。
「ペンタブ初心者用のまる練習用ツールを作る(その4)」の続きです。
「ペンタブ初心者用のまる練習用ツールを作る(その4)」までは、Windows.Formsを使ってましたが、せっかくDXライブラリを使い始めたので、DXライブラリを使用するプログラムに変えてみます。
ペンが離されたときに、画像を切り替える処理は、DX.GetMouseInputLog2というAPIを使って実現します。
int Button; int UpDown; int X; int Y; DX.GetMouseInputLog2( out Button, out X, out Y, out UpDown, DX.TRUE); if( ( Button & DX.MOUSE_INPUT_LEFT ) != 0 ){ if(UpDown == DX.MOUSE_INPUT_LOG_UP){ // ペンががタブレットから離された時に処理される } }
これを組み込んだ全ソースです。
maru.cs
using System; using DxLibDLL; class Test{ static string[] files; static int file_no=0; static void UpdatePicture(){ DX.DrawBox(0,0,200,200,DX.GetColor(255,255,255),DX.TRUE); DX.LoadGraphScreen(0,0,files[file_no++],DX.TRUE); if(file_no>=files.Length) file_no=0; } [STAThread] static void Main(){ int Button, UpDown; int X, Y; uint Color; Random r=new Random(); DX.ChangeWindowMode(DX.TRUE); DX.SetGraphMode(200,200,32); files = System.IO.Directory.GetFiles( @"img", "*.png", System.IO.SearchOption.AllDirectories); if(DX.DxLib_Init() == -1) return; UpdatePicture(); while(DX.ProcessMessage() == 0 && DX.CheckHitKey(DX.KEY_INPUT_ESCAPE) == 0){ if( ( DX.GetMouseInput() & DX.MOUSE_INPUT_LEFT ) != 0 ){ DX.GetMousePoint(out X, out Y); Color = DX.GetColor(0,0,0); DX.DrawCircle(X, Y, 2, Color,DX.TRUE); } DX.GetMouseInputLog2( out Button, out X, out Y, out UpDown, DX.TRUE); if( ( Button & DX.MOUSE_INPUT_LEFT ) != 0 ){ if(UpDown == DX.MOUSE_INPUT_LOG_UP){ UpdatePicture(); UpDown = 0; } } } DX.DxLib_End(); } }
コマンドプロンプトで、ビルドして実行
C:\>csc maru.cs DxDll.cs C:\>maru
実行動画です。
dx 5
コメント