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

Вниз

Свой компонент контрола   Найти похожие ветки 

 
DNSokol ©   (2003-10-01 17:33) [0]

Собственно никогда не делал нижеописанное, а поэтому нужен халп. Итак, нусно сделасть свой контрол, который бы рисовался на модифицированном TPanel - TMPanel, причем мог перемещаться (ну с перемещением проблем нет - планирую перехватывать сообщения мыши и если нажат буттон, то TMPanel.Perform (...)) по этой панели и растягиваться, если его потянуть за край (как окошко). интересно следующее:
1. От чего лучше наследоваться (TControl, TGraphigControl или что то ещё)
2. Куда вещается механизм отрисовки (грубо: нарисовать прямоугольник синего цвета с чёрными краями, за которые можно цепляться и растягивать этот прямоугольник)
3. Куда проверку затолкать, что если owner"ом является не TMPanel, а что то другое? Есть предположение, что в Create это засунуть... непонятно одно - если это будет происходить в IDE Delphi - этот креат отработает и заявит узеру - что не туда тыкаем - или нет?


 
Skier ©   (2003-10-01 17:41) [1]

Не парься. :)
Component TStretchHandle [D1..D5]
http://www.micrel.cz/delphi/index_e.html


 
DNSokol ©   (2003-10-01 19:12) [2]

мне тот компонент не подходит :( да и если самому сделать то оно как то лучше :)


 
Rem ©   (2003-10-01 19:25) [3]

1. TGraphicControl
2. Переформулируй
3. Заявит-заявит! Только не в Create, потому что Owner - это не то, что тебе надо. Тебе надо Parent, поэтому в SetParent.


 
DNSokol ©   (2003-10-01 22:03) [4]

TO Rem Пасиба.
по поводу 2. Я создал контрол. Куда нужно подвесить отрисовку этого контрола? Т.е. он у меня воткнулся, далее какое событие вызывается что бы нарисовать этот контрол? (WM_PAINT?) или нужно переопределять что-то другое? Ещё - нужно ли запоминать ту картинку, которая находится под контролом (т.е. при перемещении, восстанавливать, что было под ним, потом запоминать картинку на вовом местоположении, после чего себя там рисовать? или винда это на себя возьмёт)? По поводу подвешивания на WM_PAINT есть сомнения т.к. это событие я могу допустим переопределит у формы, но она всё равно отрисовывается.... вот и интересно - где же именно (т.е. в какой процедуре и на какое событие подвешенной) производить рисование своего контрола. Есть еще предположение переопределить метод Paint родителя(???).
И еще в дагонку - посмотрел - у TGraphicControl нету эвента OnMouseMove, OnClick, etc. как это туда привентить?



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

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

Наверх




Память: 0.48 MB
Время: 0.027 c
14-40591
Vlad
2003-09-25 12:33
2003.10.13
Задачка на логику


3-40313
Alex21
2003-09-22 10:43
2003.10.13
Базы на серваке


1-40446
Sergp
2003-10-02 15:36
2003.10.13
Помогите справиться с TCoolBar


14-40593
Думкин
2003-09-23 14:41
2003.10.13
Снег


1-40365
ec
2003-10-01 13:38
2003.10.13
TScrollBar