ll_libload user, "user32.dll"
ll_getproc SetWindowPos, "SetWindowPos", user
ll_getproc GetWindowLong, "GetWindowLongA", user
ll_getproc SetWindowLong, "SetWindowLongA", user
#module
#deffunc setobjinfo int, int, int, int, int, int
mref id, 0 : mref px, 1 : mref py, 2 : mref sx, 3 : mref sy, 4 : mref flg, 5
mref bmscr, 67
if id < 1000 : i = id + 41 : i = bmscr.i : else : i = id
prm = i, 0, px, py, sx, sy, flg = -1 * 0x0027 + (flg ! -1 * flg)
ll_callfunc prm, 7, SetWindowPos@
return
#deffunc objgetstyle int, int
mref id, 0 : mref extflg, 1
mref stt, 64
mref bmscr, 67
if id < 1000 : i = id + 41 : i = bmscr.i : else : i = id
prm = i, -4 * (extflg ! 0) - 16
ll_callfunc prm, 2, GetWindowLong@
ll_ret i : stt = i
return
#deffunc objsetstyle int, int, int, int
mref id, 0 : mref extflg, 1 : mref aprm, 2 : mref dprm, 3
mref bmscr, 67
objgetstyle id, extflg
if id < 1000 : i = id + 41 : i = bmscr.i : else : i = id
prm = i, -4 * (extflg ! 0) - 16, stat | aprm & (stat | aprm ^ dprm)
ll_callfunc prm, 3, SetWindowLong@
setobjinfo id, , , , , -1 // 位置・サイズは変更せずにスタイルのみ変更
return
#global
objsize 100, 100
pos 10, 10 : button "ココから\n終了する", *exit
pos 200, 10 : button "終\n了\nす\nる", *exit // 縦書きは1文字毎に改行を入れてるだけ…。
objsetstyle 0, , 0x2000 // BS_MULTILINE
objsetstyle 1, , 0x2000 // BS_MULTILINE
stop
*exit
|