|
 |
 e381bce3818fe381afe381a0e3828c |

|
2016/7/13(Wed) 19:03:44|NO.76177
OSもどきを作っていまして、
#uselib "user32.dll"
#func SetParent "SetParent" int, int
#func GetWindowLongA "GetWindowLongA" int , int
#func SetWindowLongA "SetWindowLongA" int , int , int
#func SetLayered "SetLayeredWindowAttributes" int , int , int , int
#func SendMessageA "SendMessageA" int , int , int , int
#func PostMessageA "PostMessageA" int , int , int , int
#func SetCapture "SetCapture" int
#func ReleaseCapture "ReleaseCapture"
buffer 2
pos 0,0 : picload "Recycle Bin_Push.bmp" , 1
buffer 3
pos 0,0 : picload "Recycle Bin_Not.bmp" , 1
screen 0,800,600
color 87,168,168 : boxf
hwndParent = hwnd
bgscr 1,36,50
hwndChild = hwnd
SetParent hwndChild, hwndParent
*WM_NOTBUTTON
SetLayered hwnd , 0 , 0 , 1
onclick gosub *WM_BUTTONCLICK
gmode 2
gcopy 3,0,0,36,50
oncmd gosub *WM_LBUTTONDOWN , 0x0201
oncmd gosub *WM_KEYDOWN , 0x0100
stop
*WM_BUTTONCLICK
mox = mousex : moy = mousey
if((mox>=0)and(mox<=36)and(moy>=0)and(moy<=50)){ goto *WM_PUTCLICKBUTTON }
return
*WM_PUTCLICKBUTTON
SetLayered hwnd , 0 , 0 , 1
oncmd gosub *WM_LBUTTONDOWN , 0x0201
oncmd gosub *WM_KEYDOWN , 0x0100
gmode 2
gcopy 2,0,0,36,50
stop
*WM_LBUTTONDOWN
PostMessageA hwnd , 0x00a1 , 0x02 , lparam
return
*WM_KEYDOWN
if wparam == 0x1b{
PostMessageA hwnd , 0x0010 , 0 , 0
}
return
みたいにすると、
・タスクバーにごみ箱が重なる
(タスクバーの画像を移動させると、ごみ箱が白くなるかタスクバーが移らない)
・画面内のごみ箱以外を触っても、ごみ箱を触ったことになる
自分は、
・タスクバーの下にごみ箱が行くようにする
・ごみ箱を触らないと触ったことにならない
お願いします、直してください。
わがままいってすみません。

| |
|
2016/7/15(Fri) 15:28:33|NO.76195
objimageという、画像をボタンとして設定できる命令があるのに。
詳しくは上記命令を入力し、f1キーを押してください。
サンプルがあります。
|
 e381bce3818fe381afe381a0e3828c |

|
2016/7/15(Fri) 19:06:40|NO.76196
screen無しver
#uselib "user32.dll"
#func SetParent "SetParent" int, int
#func GetWindowLongA "GetWindowLongA" int , int
#func SetWindowLongA "SetWindowLongA" int , int , int
#func SetLayered "SetLayeredWindowAttributes" int , int , int , int
#func SendMessageA "SendMessageA" int , int , int , int
#func PostMessageA "PostMessageA" int , int , int , int
#func SetCapture "SetCapture" int
#func ReleaseCapture "ReleaseCapture"
buffer 2
pos 0,0 : picload "Recycle Bin_Push.bmp" , 1
buffer 3
pos 0,0 : picload "Recycle Bin_Not.bmp" , 1
bgscr 1,36,50
*WM_NOTBUTTON
SetLayered hwnd , 0 , 0 , 1
onclick gosub *WM_BUTTONCLICK
gmode 2
gcopy 3,0,0,36,50
oncmd gosub *WM_LBUTTONDOWN , 0x0201
oncmd gosub *WM_KEYDOWN , 0x0100
stop
*WM_BUTTONCLICK
mox = mousex : moy = mousey
if((mox>=0)and(mox<=36)and(moy>=0)and(moy<=50)){ goto *WM_PUTCLICKBUTTON }
return
*WM_PUTCLICKBUTTON
SetLayered hwnd , 0 , 0 , 1
oncmd gosub *WM_LBUTTONDOWN , 0x0201
oncmd gosub *WM_KEYDOWN , 0x0100
gmode 2
gcopy 2,0,0,36,50
stop
*WM_LBUTTONDOWN
PostMessageA hwnd , 0x00a1 , 0x02 , lparam
return
*WM_KEYDOWN
if wparam == 0x1b{
PostMessageA hwnd , 0x0010 , 0 , 0
}
return

| |
 e381bce3818fe381afe381a0e3828c |

|
2016/7/15(Fri) 20:53:07|NO.76198
すみません、objimageを試しましたが、どうしても私は、クリックしたまま移動できるようにしたく、一回クリックをしなければいけないので、どうすれば出来ますか?
|
 e381bce3818fe381afe381a0e3828c |

|
2016/7/15(Fri) 21:44:08|NO.76199
すみません、Source Codeを無くしたので、一から作り直します。
|
|