Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.23;
Скачать: CL | DM;

Вниз

TCustomListBox vs Columns   Найти похожие ветки 

 
Phn   (2003-12-11 16:39) [0]

Здравствуйте, Мастера. Я делаю компонент-потомок от TCustomListBox. Там есть такое св-во Columns. Дык вот когда устанавливаешь это свойство > 0, выделенный итем из одной колонки накладываются на соседний в другой. Как сделать, чтобы Brush отрисовывался только на длину строки, как в TreeView, или хотя бы, чтобы строка не перекрывала другие. Вот код отрисовки строк:


Function IsDirectory(Str:String):Boolean;
Begin
Result:=False;
if (Str[1] = "[") and (AnsiLastChar(Str)^ = "]") then
Result:=True;
End;

procedure TAnyListBox.DrawItem(Index: Integer; Rect: TRect; State: TOwnerDrawState);
var
Offset: Integer;
begin
with Canvas do
begin
Offset:=2;

If IsDirectory(Items[Index]) Then
Font.Assign(FDirectoriesFont)
Else
Font.Assign(FFileFont);

if odSelected in State Then
Begin
Brush.Color:=FSelectedItemColor;
Font.Color:=FSelectedItemFontColor;
End;

FillRect(Rect);
TextOut(Rect.Left + offset, Rect.Top, Items[Index]);
end;
end;


Заранее всем спасибо.


 
Sandman25 ©   (2003-12-11 16:42) [1]

Видимо, надо использовать не TextOut, а TextRect


 
Phn   (2003-12-11 16:47) [2]

Большущее тебе спасибо, Sandman!



Страницы: 1 вся ветка

Текущий архив: 2003.12.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
14-75386
Igorek
2003-11-27 21:15
2003.12.23
Что делать, когда все в лом?


1-75181
dolphin1
2003-12-10 21:06
2003.12.23
открытые файлы


3-75111
tchn
2003-11-28 14:39
2003.12.23
SQLDirect, MSSQL, (10029)Maximum number of DBPROCESSes already al


14-75304
Alexandr.
2003-11-30 14:12
2003.12.23
Что такое MsSQL и с чем его употребляют?


1-75176
Aleksandr
2003-12-10 16:41
2003.12.23
У меня пропали Hint ы. Совсем. Ни один объект не высвечивает.