Вниз
Скачать: CL | DM;

listbox   Найти похожие ветки 

← →
user965 ©   (2002-08-07 12:49) [0]

есть две кнопки задача что-бы в listbox информация писалась разным цветом, сейчас я использую процедуру но она чередует цвета :-(( подскажите как сделать что-бы те строки которые были введены одной кнопкой были одного цвета , а которые были введены другой кнопкой другово никак не могу допереть ???????? помогите плз

procedure TForm1.vg2ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var
myColor: TColor;
myBrush: TBrush;
begin
myBrush := TBrush.Create;
with (Control as Tvg2ListBox).Canvas do
begin
if not Odd(Index) then
myColor := clRed
else
myColor := clYellow;
myBrush.Style := bsSolid;
myBrush.Color := myColor;
Windows.FillRect(handle, Rect, myBrush.Handle);
Brush.Style := bsClear;
TextOut(Rect.Left, Rect.Top,
(Control as Tvg2ListBox).Items[Index]);
MyBrush.Free;
end;
end;


← →
MBo ©   (2002-08-07 12:58) [1]

Рассуждаем логически - для решения задачи необходимо хранить информацию о способе добавления строки. Где можно хранить этот признак? Items типа TStrings имеют свойство Objects, представляющее собой указатели, вот в них и можно записывать, например,
Items.AddObject(SomeString, pointer(1))
для первого способа, и Pointer(2) для второго, а в DrawItem проверять Integer(Objects[Index]) и далее понятно...



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
3-60514
Александр456
2002-07-30 09:19
2002.08.19
Голова уже ничего не соображает - помогите плиз!!!


3-60519
AlexDulub
2002-07-30 00:55
2002.08.19
Работа с ADO


1-60673
anod
2002-08-06 11:24
2002.08.19
Ошибка диска А


1-60706
MikeZ
2002-08-05 09:45
2002.08.19
Управление чужими программами


14-60854
Эмиль
2002-07-23 13:43
2002.08.19
Какой аналог делфийского метода Inherited в C++Builder




   Наверх