;右クリックで終了 #define BUTTON_MAX 3 ;ボタンの数 #define BUTTON_W 90 ;ボタンの幅 #define BUTTON_H 40 ;ボタンの高さ *main ;----------------変数の初期化------------------- dim button_x,BUTTON_MAX dim button_y,BUTTON_MAX button_x=100,200,300 ;ボタンの左上のX座標 button_y=50,100,150 ;ボタンの左上のY座標 ;----------------画面の準備------------------- buffer 2 picload "button.bmp" ;バッファーにボタンの絵を読み込む gsel 0 *view repeat BUTTON_MAX pos button_x.cnt,button_y.cnt gcopy 2,BUTTON_W*cnt,0,BUTTON_W,BUTTON_H ;ボタンを表示 loop ;----------------入力待ち------------------- *kurikaesi click_stat=0 await 1 stick click_stat if click_stat==512 : end ;右ボタンが押された if click_stat!256 : goto *kurikaesi ;左ボタンが押されていない ;----------------どこでクリックされたか判定------------------- number=-1 ;何番目のボタンか repeat BUTTON_MAX if mousex < button_x.cnt : continue if mousex > (button_x.cnt+BUTTON_W) : continue if mousey < button_y.cnt : continue if mousey > (button_y.cnt+BUTTON_H) : continue number=cnt ;押されたボタンをnumberに break loop if number==-1 : goto *kurikaesi ;ボタンの上ではない pos button_x.number,button_y.number gcopy 2,BUTTON_W*number,BUTTON_H,BUTTON_W,BUTTON_H ;押された画像に書き換える if number==0 : dialog "赤ボタンが押されました" if number==1 : dialog "青ボタンが押されました" if number==2 : dialog "緑ボタンが押されました" goto *view |