Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Основная";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.007 c
14-20662
Oleg
2003-07-18 07:36
2003.08.07
C какого момента начинающий программист ...


7-20822
Intell
2003-04-19 19:09
2003.08.07
Как связать расширение с прогой?


3-20448
qpwoeiruty
2003-07-17 14:46
2003.08.07
Как вызвать диалог Build Connection String в RunTime для ADO?


6-20643
неРуль
2003-05-26 09:38
2003.08.07
перенаправление портов


14-20703
Феликс
2003-07-22 20:46
2003.08.07
А не украдут?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский