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

Вниз

Группировка в ListBox1   Найти похожие ветки 

 
Supreme   (2002-12-12 17:09) [0]

Нужно написать отдельную процедуру, чтобы сгруппировать строки в
ListBox1. Т.е. имееются строки, например:
111111
222222
333333
444444
Нужно перед каждой добавить "1. ", "2. ", "3. "...."25. " и т.д. до конца.
Но чтобы не это делалось не просто "допечатыванием", а с заменой старых значений.
т.е., чтобы не получилось такого:
1. 1. 111111
2. 2. 222222
3. 3. 333333
и т.д.
помогите написать процедуру.


 
Calm ©   (2002-12-12 17:26) [1]

Перед тем как добавить номер, проверяй первое слово (символы до пробела) обрабатываемой строки. Если перовое слово состоит из цифр и точки, тогда его нужно удалить и только после этого добавить номер.

Использовать фукнцию Copy, проверку на вхождение символа в множество и все...


 
Supreme   (2002-12-12 20:38) [2]

Можно пример?


 
Бурундук   (2002-12-12 21:17) [3]

Есть ещё вариант:
можно не добавлять номер к строке, а просто
рисовать его. Тогда не надо будет отслеживать изменения -
номер будет соответсвтовать позиции автоматически.

ListBox1.Style := lbOwnerDrawFixed;

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var s: string;
begin
with (Control as TListBox) do
begin
if odSelected in State then
begin
Canvas.Brush.Color := clHighlight;
Canvas.Font.Color := clHighlightText;
end else
if odDisabled in State then
Canvas.Font.Color := clInactiveCaption;
//...

s := Format("%d. %s", [Index, Items[Index]]);
Canvas.TextRect(Rect, Rect.Left+2, Rect.Top, s);
end;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
1-74841
don_dampster
2002-12-11 16:37
2002.12.23
unrar.dll


14-74991
Mad_Ghost
2002-12-04 08:10
2002.12.23
Вопрос по С++, подклбчение lib ов


6-74874
Dimich1978
2002-10-29 14:30
2002.12.23
Запустить файл на удаленной машине?


3-74618
@Ujin
2002-12-05 13:11
2002.12.23
Почему в Access-е работает, а через ADO нет?


1-74799
oss
2002-12-11 13:22
2002.12.23
BPL (часть 3)