メイン メニュー項目の背景色を変更する方法を示すスクリプトを次に示しますが、メニューの残りの部分は灰色のままです。
void __fastcall TForm1::AdvancedDrawNewItemMain(TObject *Sender, TCanvas *ACanvas, const TRect &ARect,
TOwnerDrawState State)
{
TMenuItem *MenuItem = ((TMenuItem*)Sender);
TRect TempRctN = ARect;
TempRectN.top=TempRctN.top+2;
ACanvas->Brush->Color =clRed;
ACanvas->FillRect(ARect);
DrawTextW(ACanvas->Handle,MenuItem->Caption.w_str(),MenuItem->Caption.Length(),&TempRctN, DT_CENTER);
if((State.Contains(odSelected) || State.Contains(odHotLight) ) && !State.Contains(odDisabled) )
{
ACanvas->Brush->Color =static_cast<TColor>RGB(49,106,197);
ACanvas->FillRect(ARect);
ACanvas->Font->Color=clWhite;
DrawTextW(ACanvas->Handle,MenuItem->Caption.w_str(),MenuItem->Caption.Length(),&TempRctN, DT_CENTER);
}
}
メインメニューの背景色全体を変更する方法を知っている人はいますか?