我正在处理一个处理大量标签控件的应用程序。每个Tab项具有不同的颜色。我看了谷歌并得到了一个解决方案,但这还不够。每个人都更改了标签项颜色而不是标签控件本身。
好的,这太容易了。 现在我想更改选项卡控件颜色,它以红色突出显示,见下文:
答案 0 :(得分:0)
也许你可以试试这个:( this other example之后免费)
#include <GUIConstantsEx.au3>
#include <ColorConstants.au3>
#include <GuiTab.au3>
Example()
Func Example()
local $Form=GUICreate("My GUI Tab") ; will create a dialog box that when displayed is centered
GUISetBkColor(0x00E0FFFF)
GUISetFont(9, 300)
local $Tab = GUICtrlCreateTab(10, 10, 200, 100)
_GUICtrlTabHeader_SetBkColor($Form, $Tab, 0xFF0000) ;set tab header color
GUICtrlCreateTabItem("tab0")
GUICtrlCreateTabItem("tab1")
GUICtrlCreateTabItem("") ; end tabitem definition
GUISetState(@SW_SHOW)
For $iIndex = _GUICtrlTab_GetItemCount($Tab) To 0 step -1 ;show tabs
_GUICtrlTab_ActivateTab ( $Tab, $iIndex )
Next
Local $idMsg
While 1 ; Loop until the user exits.
$idMsg = GUIGetMsg()
If $idMsg = $GUI_EVENT_CLOSE Then ExitLoop
WEnd
EndFunc ;==>Example
Func _GUICtrlTabHeader_SetBkColor($hWnd, $hSysTab32, $sBkColor)
Local $aTabPos = ControlGetPos($hWnd, "", $hSysTab32)
Local $aTab_Rect = _GUICtrlTab_GetItemRect($hSysTab32, -1)
GUICtrlCreateLabel("", $aTabPos[0]+2, $aTabPos[1], $aTabPos[2]-6, $aTab_Rect[3]+3)
GUICtrlSetBkColor(-1, $sBkColor)
GUICtrlSetState(-1, $GUI_DISABLE)
EndFunc