Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Работа с графикой в Delphi


Автор: RomanVed 23.10.2004, 17:02
Есть карта города в растре (*.bmp). На карте имеются различные объекты. Необходимо сделать так, чтобы по нажатию на карте по этому объекту выдавалась информация о нём (информация берётся из БД). Также нужно, чтобы Юзер мог сам создавать такие объекты на карте или удалять их. Например, по нажатию кнопки Добавить/Удалить. Читал, что метафайлы (*.emf) предоставляют такую возможность (привязка к области координат определённого события), но как это сделать - не знаю.







P.S.: Спасибо, что откликнулись на мою просьбу,

Но {для Pakshin A.S.} в этом случае будет заморочка с зуммированием?!
{для МасТер} скинь, буду очень благодарен!

Автор: Pakshin A. S. 23.10.2004, 19:29
Цитата(RomanVed @ 23.10.2004, 18:02)
Читал, что метафайлы (*.emf) предоставляют такую возможность (привязка к области координат определённого события), но как это сделать - не знаю.
К сожалени, этого не знаю. Но есть такая задумка:

Есть Iamge, где есть карта. По событию ОnClick этого Image определяем место, где проихошел щетчок, т. е. распишем для х: из текущей позиции мыши вычетаем сумму позиция левого верхнего края формы на экране и позиция левого верхнего края Image; аналогично определяем координату y.
Если файл такого типа, к примеру:
Код

type
TFileI = record
 X: integer;
 Y: integer;
 Info: string[255];
end;
TFile = file of TFileI;

По имеющимся координатам мы без труда найдем соответствующую инфу. Можно также сделать и область...

Автор: MacTep 23.10.2004, 21:20
Можно работать с полигонами ихображения. Это такие выделенные области на картинге, при наведении на которые или нажати мышкой, происходит что-то конкретное. Могу скинуть на мыло пример!

Автор: Cashey 9.11.2004, 23:42
Обычно не работают с цельным куском *.BMP. А создают карту из кусочков-объектов, на которых изображен фрагмент карты. И эти объекты уже могут содержать свойства для обработки различных действий, в том числе и всплывающего окна.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)