DLL側から指定したコントロールの色変更が出来ないのですが、どの様にすれば良いのでしょうか?
hSTHook=SetWindowsHookEx(WH_CALLWNDPROC, AddressOf(CallWndProc), hInst, 0)
hInst: "Function Export DllMain(hinstDLL As DWord, ・・・"のhinstDLL値
STATIC1:DLL呼び出し側のウィンドウに貼り付けて在るスタティックコントロールのハンドル
hbST:背景用枠ブラシ CreateSolidBrush(&HFFFF)
コード: 全て選択
Function CallWndProc(code As DWord, wParam As DWord, lParam As *CWPSTRUCT) As DWord
Dim f As Byte
Dim bc As DWord
Dim tc As DWord
If code=HC_ACTION Then
Select Case lParam->uMsg
Case WM_CTLCOLORSTATIC
If lParam->lParam=STATIC1 Then f=1: tc=&HFF: bc=&HFFFF
End Select
End If
If f Then
SetBkMode(lParam->wParam, OPAQUE)
SetBkColor(lParam->wParam, bc)
SetTextColor(lParam->wParam, tc)
CallWndProc=hbST '背景用枠ブラシ
CallNextHookEx(hSTHook, code, wParam, lParam)
Else
'次のフックを呼び出す
CallWndProc=CallNextHookEx(hSTHook, code, wParam, lParam)
End If
End Function