Zmiana koloru paska Menu...

0

Napisałem program, cały jest w kolorze białym a pasek jest w kolorze szarym. Jak zmienić jego kolor na biały?

0

Domyślam się ze chodzi o komponent TMainMenu. Ustawiasz OwnerDraw na True.
Do każdego TMenuItem pod OnAdvancedDrawItem podpinasz taka procedurę.

procedure TForm1.XXXXAdvancedDrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; State: TOwnerDrawState);
var
  Napis : String;
begin

 ACanvas.Brush.Color := clWhite;
 ACanvas.Pen.Color := clWhite;
 ACanvas.Rectangle(ARect);
 Napis := Copy((Sender as TMenuItem).Caption, 2, Length((Sender as TMenuItem).Caption) - 1); //Usuwamy &
 ACanvas.TextOut(ARect.Left + 1, ARect.Top + 1, Napis);

end;

Pozostaje jeszcze ci dorobić ten kod, np. jak myszka najedzie na Itema żeby tło się zmieniło itd.

Efektywne menu
OwnerDraw

0

Wszysto pięknie wygląda na menu, ale jak zmienić kolor pozostałego kawałka. U mnie wygląda to tak.
user image
Czy wiecie jak zmienić kolor pozostałego fragmentu menu (szary) ? Próbowałem dodać dodatkowy przycisk bez nazwy i rozszerzyć go na pozostały fragment menu, ale nie jest możliwe aby rozszeżyć go na całość menu , zawsze pozostaje -margines (1, 2 mm) nie do wykorzystania, którego kolor dalej jest automatyczny (szary).

1 użytkowników online, w tym zalogowanych: 0, gości: 1