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

Вниз

Перекрытый Paint.   Найти похожие ветки 

 
Ice   (2006-03-16 13:49) [0]

Есть компонент, наследник TPanеl... Его пайнт я перекрыл, ибо надо было рисовать на канве самой панели. Но. Иногда это рисование задевает контролы, которые на этой панели размещены. А если вызывать у этих контролов Repaint, Refresh, Invalidate - то обновление оных вызывает обновление панели, которое, в свою очередь, ну и т.д. ...
Как быть ?

procedure TXPanel.Paint;
var i : integer;
begin
 inherited;

 {......}

 if self.ControlCount > 0 then
   for i:=0 to self.ControlCount - 1 do
    (self.Controls[i] as TControl).Repaint;

end;


 
MBo ©   (2006-03-16 15:29) [1]

>А если вызывать у этих контролов
Так контролы сами перерисовываются же...
TWinControl.PaintHandler
TWinControl.PaintControls


 
Ice   (2006-03-16 16:01) [2]


> MBo ©   (16.03.06 15:29) [1]
> >А если вызывать у этих контролов
> Так контролы сами перерисовываются же...
> TWinControl.PaintHandler
> TWinControl.PaintControls


В дизайн-тайме тоже ? Тогда я чего то не понимаю...


 
MBo ©   (2006-03-16 16:30) [3]

>Тогда я чего то не понимаю...
Разъясни, в чем у тебя проблема-то


 
Ice   (2006-03-16 16:43) [4]

Есть наследник TPanel.
Помещаю его на форму. Все ОК.
Помещаю уже на него TLabel. Все тоже ОК.
Если после этого меняю какие-то свойства, затрагивающие метод Paint моего компонента, TLabel тут же пропадает.

Если переключиться в редактор и снова на форму - TLabel появится. Если нажать F9  - в рантайме TLabel тоже появится.

Проблема в том, чтобы в дизайнтайме обновить контролы на панели, не зацикливая её Paint...


 
clickmaker ©   (2006-03-21 11:17) [5]


> if self.ControlCount > 0 then
>    for i:=0 to self.ControlCount - 1 do
>     (self.Controls[i] as TControl).Repaint

вот это зачем?
и как ты рисуешь на панели?



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

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

Наверх




Память: 0.48 MB
Время: 0.054 c
15-1161894050
ArtemESC
2006-10-27 00:20
2006.11.12
Си - удаление и выделение памяти под указатели...


11-1137965443
Flea
2006-01-23 00:30
2006.11.12
Hottrack для TabControl


6-1150711485
kolj
2006-06-19 14:04
2006.11.12
передача файлов через TserverSocket TclientSocket


1-1159444991
DVM
2006-09-28 16:03
2006.11.12
У TEdit какие то проблемы с маленькой буквой "я"?


2-1161705819
Лиля
2006-10-24 20:03
2006.11.12
помогите разобраться