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

Как сделать полигон?   Найти похожие ветки 

 
Condor ©   (2003-07-24 13:42) [0]

Подскажите, пожалуйста, как сделать Shape произвольной формы, например, пятиугольник..


 
Переяслов Григорий ©   (2003-07-24 14:10) [1]

Пиши компонент - наследник Shape и переопределяй метод Paint


 
GrEG   (2003-07-24 14:48) [2]

+ CreatePolygonRgn + SetWindowRgn при создании компонента.
+ Обработка WM_NCHITTEST, WM_SIZE и иже с ними.


 
AlexRush ©   (2003-07-24 14:49) [3]

А еще есть GDI APIшка Polygon и Polypolygon.


 
AlexRush ©   (2003-07-24 14:52) [4]

2GrEG (24.07.03 14:48) заметьте,не про форму, а про Shape спрашивалось...


 
GrEG   (2003-07-24 14:56) [5]

The Polygon function draws a polygon consisting of two or more vertices connected by straight lines. The polygon is outlined by using the current pen and filled by using the current brush and polygon fill mode.
Т.е. Polygon - РИСУЕТ полигон по набору вершин.
CreatePolyRgn - СОЗДАЕТ регион, который можно установить в качестве региона окна (SetWindowRgn). Перерисовываться и реагировать на перемещения мыши окно будет только в пределах этого региона.


 
GrEG   (2003-07-24 14:59) [6]

Х-м-м, для потомков TGraphicControl это действительно верно (ну нету у них Handle"а).
Но ведь человек наверняка захочет обрабатывать мышь именно внутри этого полигона, а в этом случае без TWinControl и сказанного выше не обойтись.


 
race1 ©   (2003-07-25 08:29) [7]

а вообще реально совместить хэндл и канвас? может, что-то своё нетрудно сваять?


 
MBo ©   (2003-07-25 08:41) [8]

>а вообще реально совместить хэндл и канвас? может, что-то своё нетрудно сваять
Нетрудно, нужно только внимательно исследовать иерархию VCL, исходники и книги почитать.


 
Condor ©   (2003-07-25 10:12) [9]

А может все-таки как-нибудь можно получить Handle Shape"ы?
Если она создается в run-time..



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

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



Память: 0.46 MB
Время: 0.011 c
1-20504
Эл
2003-07-24 10:37
2003.08.07
Захват окна


6-20651
TVV
2003-05-17 16:14
2003.08.07
Доступ к сетевым ресурсам


14-20705
Е-Моё имя
2003-07-23 10:37
2003.08.07
Регистрация кодека


4-20861
XobBIT
2003-06-02 16:26
2003.08.07
Как создать окно используя resource?


1-20600
Opryshok
2003-07-23 13:20
2003.08.07
как привести String к array




   Наверх