delphi VCL TMemo or TRichEdit с цветными полосами прокрутки готовые решения
delphi VCL TMemo or TRichEdit с цветными полосами прокрутки вертикальные и горизонтальные. Какие есть готовые решения или как раскрасить стандартные? версия 10.3
У меня есть AlMemo но там только вертикальная полоса прокрутки. можно конечно дописать что бы горизонтальная была. но все же хочется найти готовое. у меня мои нарисованые скрол бары. но их обратно же нужно приклеивать к мемо
я в нете такой код нашел. но он не работает. я не силен в Vcl хотельсь бы узнать что не так делаю или что можно сделать что бы цвет изменился.
InitializeFlatSB(H);
FlatSB_SetScrollRange(H,WSB_PROP_CYVTHUMB,0,100,False);
// меняем параметры
FlatSB_SetScrollProp(H,WSB_PROP_VSTYLE,FSB_ENCARTA_MODE,False); // плоский
FlatSB_SetScrollProp(H,WSB_PROP_CXVSCROLL,100,False); // ширина
FlatSB_EnableScrollBar(H,SB_VERT,ESB_DISABLE_DOWN);
FlatSB_ShowScrollBar(H,SB_BOTH,True);
FlatSB_SetScrollProp(H, WSB_PROP_VBKGCOLOR,RGB2BGR(145,44,255),True); // цвет фона
Так же попробовал сделать обработку сообщения WM_CTLCOLORSCROLLBAR но оказалось оно вообще не присылается.
TCP = class (TPanel)
protected
FBrush:HBRUSH;
public
procedure WndProc(var Message: TMessage); override;
end;
procedure TCP.WndProc(var Message: TMessage);
begin
case Message.Msg of
WM_CREATE :begin
FBrush:= CreateSolidBrush(clblack);
end;
WM_DESTROY:begin
DeleteObject(HGDIOBJ(FBrush));
end;
WM_CTLCOLORSCROLLBAR:begin
Message.Result:= Integer(FBrush);
end;
end;
inherited;
end;