VBAでSetTextColorがうまくいかない
EXCELのVBAでユーザーフォームを使ったグラフィック表示のプログラムを
作っているのですが、SetTextColorでテキスト色の設定をしようと
してもうまくいきません。何故か設定しようとする色の値が無視されて
「1304008」が設定されてしまいます。(GetTextColorで確認)
そしてそれ以降何を設定してもこの状態のままです。
何か考えられることがありますでしょうか。
下にそのプログラムを示します。
ちなみにSetBKColorやAngleArcなど他のグラフィック命令は問題なく
動いていてSetTextColorだけがうまくいってない状態です。
'-------------------------------------------------
' ユーザーフォーム用プログラム
'-------------------------------------------------
Private Declare Function GetActiveWindow Lib "user32" () As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" ( _
ByVal hwndParent As Long, _
ByVal hwndChildAfter As Long, _
ByVal lpszClass As String, _
ByVal lpszWindow As String) As Long
Private Declare Function GetDC Lib "user32" ( _
ByVal hWnd As Long) As Long
Private Declare Function ReleaseDC Lib "user32" ( _
ByVal hWnd As Long, _
ByVal hdc As Long) As Long
Private Declare Function SetTextColor Lib "gdi32" _
(ByVal hdc As Long, crColor As Long) As Long
Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" _
(ByVal hdc&, ByVal x&, _
ByVal y&, ByVal lpString$, ByVal nCount&) As Long
Dim hWnd As Long
Dim hdc As Long
Public Sub UserForm_Activate()
DoEvents
hWnd = FindWindowEx(GetActiveWindow, 0, "F3 Server 60000000", "")
hdc = GetDC(hWnd)
ret = SetTextColor(hdc, RGB(255, 0, 0))
ret = TextOut(hdc, 0, 0, "abc", 3)
Call ReleaseDC(hWnd, hdc)
End Sub
'-------------------------------------------------
お礼
早々の回答ありがとうございます。無事解決できました。