gobouさん>
目的をはずしていたらゴメンナサイ・・
CHOOSEFONT関数で選択した色はLONG型変数に入るそうなので私の場合は
変数 var shared RGBCOLOR as longと指定しておき
if CHOOSEFONT(FFONT,RGBCOLOR,-1,0) then
・・
後、印刷時フォント選択ダイアログで色を選択し、PRT1.SETFORECOLOR RGBCOLOR で
選択した色で印刷しています。
結果的に不都合なく使っていますが、使い方が違っていたらご指摘ください。
declare function SETWINDOWPOS lib "user32" alias "SetWindowPos" (byval HWND as long, byval HWNDINSERTAFTER as long, byval X as long, byval Y as long, byval CX as long, byval CY as long, byval UFLAGS as long) as long
var shared MAINFORM as object
var shared BUTTON1 as object
MAINFORM.ATTACH GETHWND
BUTTON1.ATTACH GETDLGITEM("BUTTON1")
declare sub MAINFORM_START edecl ()
sub MAINFORM_START()
'初期設定(フラグ)
FLG = 1
end sub
'コマンドボタンの処理
declare sub BUTTON1_ON edecl ()
sub BUTTON1_ON()
var RST as long
if FLG = 0 then
'「常に手前に表示」を解除
RST = SETWINDOWPOS(MAINFORM.GETHWND, HWND_NOTTOPMOST, 0, 0, 0,0, SWP_SHOWWINDOW or SWP_NOMOVE or SWP_NOSIZE)
FLG = 1
BUTTON1.SETWINDOWTEXT "「常に手前に表示」する"
MAINFORM.SETWINDOWTEXT "現在は「ノーマル」状態です"
else if FLG = 1 then
'「常に手前に表示」をセット
RST = SETWINDOWPOS(MAINFORM.GETHWND, HWND_TOPMOST, 0, 0, 0, 0, SWP_SHOWWINDOW or SWP_NOMOVE or SWP_NOSIZE)
FLG = 0
BUTTON1.SETWINDOWTEXT "「常に手前に表示を解除」する"
MAINFORM.SETWINDOWTEXT "現在は「常に手前に表示」状態です"
end if
end sub
sub MAINFORM_START()
TIMER1.SETINTERVAL 6000
TIMER1.ENABLE -1
FLG = 0
FORM_STATE
end sub
declare sub BUTTON1_ON edecl ()
sub BUTTON1_ON()
FLG = not(FLG)
FORM_STATE
end sub
sub FORM_STATE()
var RST as long
if FLG = 0 then
RST = SETWINDOWPOS(MAINFORM.GETHWND, HWND_NOTTOPMOST, 0, 0, 0,0, SWP_SHOWWINDOW or SWP_NOMOVE or SWP_NOSIZE)
BUTTON1.SETWINDOWTEXT "「常に手前に表示」する"
MAINFORM.SETWINDOWTEXT "現在は「ノーマル」状態です"
else
RST = SETWINDOWPOS(MAINFORM.GETHWND, HWND_TOPMOST, 0, 0, 0, 0, SWP_SHOWWINDOW or SWP_NOMOVE or SWP_NOSIZE)
BUTTON1.SETWINDOWTEXT "「常に手前に表示を解除」する"
MAINFORM.SETWINDOWTEXT "現在は「常に手前に表示」状態です"
end if
end sub
declare sub TIMER1_TIMER edecl ()
sub TIMER1_TIMER()
MAINFORM.SETFOREGROUNDWINDOW
end sub
(一部省略)で1分ごとにアクティブになりました。自己流のためひょっとしてとんでもないことをしているかも・・
var shared MAINFORM as object :MAINFORM.ATTACH GETDLGITEM("MAINFORM")
var shared TIMER1 as object :TIMER1.ATTACH GETDLGITEM("TIMER1")
var shared EDIT1 as object :EDIT1.ATTACH GETDLGITEM("EDIT1")
declare function SETWINDOWPOS lib "user32" alias "SetWindowPos" (byval HWND as long, byval HWNDINSERTAFTER as long, byval X as long, byval Y as long, byval CX as long, byval CY as long, byval UFLAGS as long) as long
declare sub MAINFORM_START edecl ()
sub MAINFORM_START()
TIMER1.SETINTERVAL 1000
TIMER1.ENABLE -1
end sub
declare sub TIMER1_TIMER edecl ()
sub TIMER1_TIMER()
beep
A= SETWINDOWPOS(MAINFORM.GETHWND, -1, 0, 0, 0, 0, &H43)
MAINFORM.SHOWWINDOW 0
MAINFORM.SETFOCUS
MAINFORM.SHOWWINDOW -1
EDIT1.SETFOCUS
A= SETWINDOWPOS(MAINFORM.GETHWND, -2, 0, 0, 0, 0, &H43)
end sub
declare function APIFINDWINDOW lib "user32" alias "FindWindowA" (byval LPCLASSNAME as string, byval LPWINDOWNAME as string) as long
var IE_HWND as long
IE_HWND = APIFINDWINDOW("IEFrame",byval 0)