●窓ハンドル透明化

※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

情報

作者名:SIGO
引用元:なでしこ質問掲示板「Re(1): 「母艦の~」の一覧」
勝手に改変

概要

ハンドルで指定したウィンドウの透過度を変更します。

解説

引数

S:対象ウィンドウのハンドル
C:透過度(薄 0-255 濃)

返り値

1or0(成功or失敗)

サンプルプログラム

●母艦設計
  母艦の可視=オフ。

「notepad.exe」を起動
1秒待つ。
メモ帳ハンドル=「*メモ帳」を窓ハンドル検索。
メモ帳ハンドルを100で窓ハンドル透明化。
終わり。

//本体

!WS_EX_LAYERED=$80000
!GWL_EXSTYLE=-20
!LWA_ALPHA=2
●GetWindowLong(h,i) = DLL("user32.dll","LONG GetWindowLongA(HWND hWnd,int nIndex)")
●SetWindowLong(h,n,d) =DLL("user32.dll","long SetWindowLongA(hwnd hWnd,int nIndex,long dwNewLong)")
●SetLayeredWindowAttributes(h,c,b,d) =DLL("user32.dll","BOOL SetLayeredWindowAttributes(HWND hwnd, LONG crKey, LONG bAlpha, DWORD dwFlags );")
●窓ハンドル透明化(SをCで)
  SetWindowLong(S,GWL_EXSTYLE,GetWindowLong(S,GWL_EXSTYLE)||WS_EX_LAYERED)
  SetLayeredWindowAttributes(S,0,C,LWA_ALPHA)


名前:
コメント:


ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。