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

Вниз

программная перерисовка ComboBox (Style=csOwnerDrawFixed)   Найти похожие ветки 

 
Light-blr   (2007-02-05 18:13) [0]

Здравствуйте!
Подскажите, пожалуйста, как перерисовать ComboBox с Style=csOwnerDrawFixed, когда меняется надпись (меняю Items как Items[0]:="a";Items[1]:="b" итд). До этого просто записывала в Items строки, они в программе не менялись, и хватало процедуры
procedure THutchStyleForm.CBStyleDrawItem(Control: TWinControl;
 Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
(* Заполняем прямоугольник *)
CBStyle.canvas.fillrect(rect);
(* Рисуем сам битмап *)
imagelist1.Draw(CBStyle.Canvas,rect.left,rect.top,index);
(* Пишем текст после картинки *)
CBStyle.canvas.textout(rect.left+imagelist1.width+2,rect.top,
CBStyle.items[index]);
end;
которую я выудила из инета. Но теперь, когда в процедуре FormCreate я меняю Items, форма появляется с комбобоксом, в котором ничего не нарисовано. То есть в нём можно всё выбрать, но изначально он пуст. Подскажите, что надо добавить к изменению Items, чтобы происходила нужная мне перерисовка?


 
Loginov Dmitry ©   (2007-02-05 19:11) [1]


> Но теперь, когда в процедуре FormCreate я меняю Items, форма
> появляется с комбобоксом, в котором ничего не нарисовано.


Устанавливай ItemIndex на нужную строку

> Подскажите, что надо добавить к изменению Items, чтобы происходила
> нужная мне перерисовка?


Repaint
Refresh



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

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

Наверх




Память: 0.46 MB
Время: 0.037 c
2-1170425512
NotGooDP
2007-02-02 17:11
2007.02.25
Отображеине данных в гриде


2-1170760534
seesm
2007-02-06 14:15
2007.02.25
Я не знаю asm


1-1168249906
i-am-vladko
2007-01-08 12:51
2007.02.25
проблемы с созданием компонента


4-1160637285
Dront
2006-10-12 11:14
2007.02.25
Как заставить окно оставаться всегда поверх всех других окон


9-1144573893
ArtemESC
2006-04-09 13:11
2007.02.25
Реализация 3D движка