Форум: "Основная";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
ВнизКак в ListBox отчертить элементы Найти похожие ветки
← →
TechnoDreamer (2004-07-11 21:47) [0]Надо чтобы каждый элемент в TListBox был отчерчен линией (как строки в TStringGrid). Сам StringGrid не подходит, нужно что бы компонент имел свойство Items. Подскажите как это сделать, или может быть есть какой-нибуть компонент с этой функцией?
← →
KilkennyCat © (2004-07-11 21:51) [1]ListView
← →
TechnoDreamer (2004-07-11 22:12) [2]да это не совсем то, мне нужна совметимость, где элементы хранятся в TStrings.
← →
KilkennyCat © (2004-07-11 22:17) [3]тогда отрисовать их самому.
← →
Sergey Kaminski (2004-07-11 22:19) [4]TListBox.Style = lbOwnerDrawFixed
в обработчике OnDrawItem:
with TListBox(Control).Canvas do
begin
if odSelected in State then
begin
Brush.Color := clHighlight;
Font.Color := clHighlightText;
end
else
begin
Brush.Color := clWindow;
Font.Color := clWindowText
end;
FillRect (Rect);
TextOut(Rect.Left,Rect.Top,TListBox(Control).Items[Index]);
// а теперь линии
Pen.Color := clBlack;
MoveTo (Rect.Left,Rect.Bottom);
LineTo (Rect.Right,Rect.Bottom);
MoveTo (Rect.Left,Rect.Top);
LineTo (Rect.Right,Rect.Top);
end;
← →
Sergey Kaminski (2004-07-11 22:21) [5]и да будут всем хорошо :)
← →
TechnoDreamer (2004-07-11 22:29) [6]2 Sergey Kaminski:
большое спасибо!
← →
TechnoDreamer (2004-07-16 01:25) [7]А еще вопрос, как бы дорисовать эти полосочики до самого низа компонента? При условии что есть незаполненое элементами место и нельзя добавлять пустые элементы?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.049 c