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


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
0109
しく最小化させないためには3未解決


しく

リンク

2011/1/9(Sun) 15:35:38|NO.36581

bgscrで作り出したウィンドウを最前面に出してCPU使用率などを表示するようなものを作ってるのですが
形だけは完成したのですが、フルスクリーンのゲームなどをしている時に誤ってその最善面に出したツールの部分をクリックすると
最小化されてしまいます。

これを最小化させないようにするにはどういった手段があるのでしょうか?



この記事に返信する


ORZ

リンク

2011/1/9(Sun) 16:09:10|NO.36582

作ったウィンドウを最前面に表示させない



hexa.hemi

リンク

2011/1/9(Sun) 16:35:35|NO.36583

最小化された時のメッセージを受け取り、return 0とすることで最小化をさせないようにできます。

oncmd gosub *sys, $112 stop *sys if wparam = $F020 : return 0 return
DeleteMenuを使った方法もやってみたのですが、うまくいきませんでした。



MIZUSHIKI

リンク

2011/1/29(Sat) 21:13:30|NO.36795

レスが今更かも知れませんが・・・

CPU使用率の表示という用途なら、クリックしてもウィンドウが何も反応しないようにすれば
最小化の問題を避けられると思います。
拡張ウィンドウスタイルに WS_EX_TRANSPARENT を追加するとマウスメッセージを透過させて、
下のウィンドウをクリックしたようにすることが出来ます。
ただしウィンドウを透過表示させる WS_EX_LAYERED も同時に設定する必要があります。


#include "user32.as" #define GWL_EXSTYLE -20 #define WS_EX_LAYERED $80000 #define WS_EX_TRANSPARENT $20 #define ULW_ALPHA 2 bgscr 1,200,150,0,100,80 gsel 1,2 color 200,50,50 :boxf :color mes "マウスメッセージも透過" // 拡張ウィンドウスタイルに WS_EX_LAYERED | WS_EX_TRANSPARENT を追加適用 GetWindowLong hwnd, GWL_EXSTYLE SetWindowLong hwnd, GWL_EXSTYLE, stat | WS_EX_LAYERED | WS_EX_TRANSPARENT // 第3パラに透明度 (アルファ値の範囲 0〜255) ; bAlpha = 255 * 75 / 100 ;透明度75% ; SetLayeredWindowAttributes hwnd, 0, bAlpha, ULW_ALPHA stop



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