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


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0731
Ace-Ryoフルスクリーンの画面を透明にする方法を教えて下さい。2解決


Ace-Ryo

リンク

2015/7/31(Fri) 23:21:30|NO.70389

質問です。スクリーンセーバーを作ってまして、フルスクリーンの画面を透明にして、
元のコンピューターの画面のまま、文字を表示させていくスクリプトなのですが、
自分が作ったものでは、どうしても画面を透明にできず、真っ白に覆われてしまいます。
 ですから、少し「アドバイス」をいただけないでしょうか。できれば、
「スクリプト」も公開していただければありがたいです。
あと、「user32.dll」を使用しています。


win_x = ginfo_dispx ;ディスプレイサイズ(幅) win_y = ginfo_dispy ;ディスプレイサイズ(高さ) #uselib "user32.dll" #func SetLayered "SetLayeredWindowAttributes" int , int , int , int bgscr 1, win_x, win_y ;枠なしのウィンドウ SetLayered hwnd , 0 ,0, 2 stop



この記事に返信する


窓月らら

リンク

2015/8/1(Sat) 00:31:32|NO.70392

どうぞ。

#uselib "user32.dll" #func GetWindowLongA "GetWindowLongA" int , int #func SetWindowLongA "SetWindowLongA" int , int , int #func SetLayered "SetLayeredWindowAttributes" int , int , int , int win_x = ginfo_dispx ;ディスプレイサイズ(幅) win_y = ginfo_dispy ;ディスプレイサイズ(高さ) bgscr 0,win_x,win_y,0,0,0 ;枠なしのウィンドウ GetWindowLongA hwnd,-20 SetWindowLongA hwnd,-20,stat | 0x00080000 // SetLayered ハンドル,カラーコード,透過率,1:カラーコードの色を透過 2:透過率を有効 ; SetLayered hwnd,0x000000,128,2 // 全体を半透明 SetLayered hwnd,0x000000,0,1 // 黒を透明 color 0,0,0: boxf // 黒で全体を塗り潰し color 255,0,0: boxf 100,100,200,200 // テスト用 button "EXIT",*exit stop *exit end



Ace-Ryo

リンク

2015/8/1(Sat) 06:25:15|NO.70395

 窓月ららさん、本当にありがとうございます。
 これで解決しました。



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