Главная страница
    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
4-20847
Vlad451
2003-06-05 18:23
2003.08.07
Встраивание формы в панель


14-20720
Dmitriy O.
2003-07-23 08:57
2003.08.07
Как получить количество дней.


3-20450
autopan
2003-07-17 14:43
2003.08.07
Вопрос по T-SQL


14-20735
Nickola2
2003-07-18 12:08
2003.08.07
Как вычислить


3-20386
boka
2003-07-15 08:05
2003.08.07
Таблицы с расширением DAT





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский