HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0220
ゴロゴロウインドウの明るさを調整する方法は?4解決


ゴロゴロ

リンク

2015/2/20(Fri) 05:43:39|NO.67447

ウインドウを徐々に暗くしてフェードアウトみたくしたいのですが、明るさを調整する命令はありますでしょうか?



この記事に返信する


skyblue

リンク

2015/2/20(Fri) 10:36:02|NO.67449

Win32APIを使って下さい。
http://mo.kerosoft.com/0192を参照して下さい。
なるべく、環境を詳細に書いて下さい。



葡萄色

リンク

2015/2/20(Fri) 14:04:59|NO.67453

一応以下のスクリプトでそれっぽいことはできます。

font "", 128 color 255 mes "こんにちわ" buffer 1 gcopy 0, , , ginfo_winx, ginfo_winy gsel 0 gmode 6, ginfo_winx, ginfo_winy, 5 repeat 102 pos 0, 0 gcopy 1 await 20 loop
gcopyのブレンド率の計算は今一挙動が掴めません。
(ブレンド率1にすると何もコピーされなかったり、4以下にすると減算されない部分があったり・・・)
恐らくもっと良い方法があると思うので、別の回答を待つのが良いかもしれません。



nepisat

リンク

2015/2/25(Wed) 00:33:14|NO.67513


#uselib "user32.dll"
#func GetWindowLongA "GetWindowLongA" int , int
#func SetWindowLongA "SetWindowLongA" int , int , int
#func SetLayered "SetLayeredWindowAttributes" int , int , int , int
screen 0
title "テスト"
GetWindowLongA hwnd , -20
SetWindowLongA hwnd , -20 , stat | 0x00080000
l=0
repeat 100
SetLayered hwnd , 0 , L*255/100 , 2 //透明度指定
await 5 //ここを変えてフェードのスピードを変える
L++
loop
stop

フェードアウト:


#uselib "user32.dll"
#func GetWindowLongA "GetWindowLongA" int , int
#func SetWindowLongA "SetWindowLongA" int , int , int
#func SetLayered "SetLayeredWindowAttributes" int , int , int , int
screen 0
title "テスト"
GetWindowLongA hwnd , -20
SetWindowLongA hwnd , -20 , stat | 0x00080000
l=100
button "フェードアウト",*FadeOut
stop


*FadeOut
repeat 100
SetLayered hwnd , 0 , L*255/100 , 2 //透明度指定
await 10
L--
loop
end

こういう方法もある。



ゴロゴロ

リンク

2015/2/27(Fri) 04:55:17|NO.67548

みなさんありがとうございます。
参考にさせて頂きます。



ONION software Copyright 1997-2023(c) All rights reserved.