2017-04-25 26 views
0

如何自定義指定或強制WS_EX_CLIENTEDGE [+ E0x200]的顏色?我想要一個更色調的顏色。AUTOHOTKEY更改WS_EX_CLIENTEDGE顏色

CustomColor   := 000055 
RequestToDisplay := "I want to change the color of WS_EX_CLIENTEDGE" 
RequestTitle  := "[REQUEST]" 

GUI Request:FONT, s9 w1000 Q5, Verdana 
GUI Request:COLOR, %CustomColor%, 000001 
GUI Request:Add, EDIT, vMyAddress cFFFFFF r3 w400 xp-11 yp-0 -VScroll Multi WantTab t8 +E0x200 +Left 
GUI Request:+LastFound +AlwaysOnTop -Caption -SysMenu 
GUI Request:MARGIN, 0, 0 
GUI Request:SHOW, x200 y300, %RequestTitle% 

ControlSend, Edit1, %RequestToDisplay%, %RequestTitle% 

return 

ESC::ExitApp 

回答

0

,或者你可能會尋求在https://msdn.microsoft.com/en-us/library/windows/desktop/ms724371(v=vs.85).aspx

例如指定的參數之一,看到COLOR_ACTIVEBORDER

和AutoHotkey的SetSysColors dllcall看到https://autohotkey.com/board/topic/36724-setsyscolors-set-system-colors/

希望這有助於

斯蒂芬

+0

是的,這個AHK論壇頁面顯然提供了正確的DDLCall方法,但是,試圖將其設置爲幾個CONFIGS後,什麼都沒有改變,我本來期望它,使用: 元素代碼:= 10 \t \t \t \t ;;(5,8) ElementValueBGRHex:= 0x000000處\t \t ;;( 0xFF0000,0x0000FF) DllCall(「SetSysColors」,「Int」,10,「Int *」,Elementcode,「UInt *」,ElementValueBGRHex) –

+0

...期待看到INACTIVEBORDER至少變黑一次(此是一個即時設置,不是?)。我也不明白10代表什麼與Elementcode的價值相矛盾。這兩個參數有什麼區別/定義? –

0

CP,

我的理解,WS_EX_CLIENTEDGE是一個窗口樣式(https://msdn.microsoft.com/en-us/library/windows/desktop/ff700543(v=vs.85).aspx)。 來改變這個窗口樣式產生的邊緣的顏色,是一個完整的其他問題。 我不知道如何制定這個確切的問題。但看着你的autohotkey代碼(AUTOHOTKEY changing WS_EX_CLIENTEDGE color),我看到CustomColor:= 000055,對我來說,它看起來像一個十進制的顏色值,用十進制指定,沒有0x前綴(但在C/C++中是必須的)

SP。