Форум: "Основная";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];
ВнизСвой цвет закладок в PageControl Найти похожие ветки
← →
Malamba (2005-12-16 10:12) [0]Собственно, это весь вопрос.
Как можно сделать свои цвета у закладки?
Нужно рыть в сторону Canvas компонента и далее Brush, или дело глубже и нужно переопределять свойства и методы в своем компоненте, производном от PageControl?
← →
Игорь Шевченко © (2005-12-16 10:36) [1]Например, так:
procedure TfMain.PageControl1DrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
S: string;
ARect : TRect;
TabSheet : TTabSheet;
begin
with PageControl1.Canvas do begin
if Active then
Brush.Color := GetNearestColor(Handle, $00F7FFFF)
else
Brush.Color := GetNearestColor(Handle, clSilver);
FillRect(Rect);
TabSheet := PageControl1.Pages[TabIndex];
if TabSheet.Enabled then
Font.Color := clWindowText
else
Font.Color := clAppWorkSpace;
S := PageControl1.Pages[TabIndex].Caption;
Windows.CopyRect(ARect,Rect);
DrawText(Handle, PChar(S), Length(S), ARect,
DT_CENTER or DT_VCENTER or DT_SINGLELINE);
end;
end;
← →
Malamba (2005-12-16 11:28) [2]Что-то не пошло. Ставлю свои цвета - ничего не меняется.
Дело не может быть в том, что на форме лежит XPManifest ?
← →
Игорь Шевченко © (2005-12-16 11:39) [3]У PageControl надо установить в true свойство OwnerDraw
← →
Malamba (2005-12-16 11:42) [4]Да, оно, спасибо.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.04 c