Получить координаты точки

Автор YURI, 13.02.03, 17:32:04

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

YURI

Господа! Вот еще ламерский вопрос.

Есть две переменные, X и Y.

Как сделать так, чтобы пользователь ткнул в чертеж, а в эти переменные попали координаты места, куда он ткнул?

типа

var X, Y: Double;
begin

       
end;

Насколько я понял, тут используется функция Cursor и надо писать цикл или какой-то калбэк, в общем опять ни черта непонятно, с чем это есть. Заранее благодарен, ижбо в станлдартной поставке КОМПАСа примеры какие-то замученные все.

Slaviation

ksGetCursorPosition
Вернуть координаты курсора

Синтаксис:
int  ksGetCursorPosition (double *x, double *y, int type);

Параметры:

x, y   - координаты курсора в миллиметрах,
type   - признак способа определения координат:
  0 - без учета привязок,
  1 - с учетом привязок

Описание:

Функция возвращает 1 в случае успешного завершения или 0 в случае ошибки (или когда курсор находится не на поле чертежа).

(изучай матчасть , т.е. API ;)

YURI

Это написано в хелпе.

А как ей пользоваться? Как она работает, в каком случае она возвращает значение, когда к ней можно обращаться - нет инфы.

Мне нужно, чтобы продзователь нажал кнопку на форме, затем ткнул в чертеж, а на форме загорелись коорджинаты места, куда он ткнул.

В цикле все виснет или вовзращает постоянно ноль.

Кто-нибудь вообще такое делал?

Пример бы желательно, причем работающий.

Sergey

Нажатие кнопки на форме должно вызвать следующее (на С++):

1. Форму надо спрятать или закрыть
2. Разрешить доступ с Компасу (если он запрещался)
3.
...
double x,y;
if (Cursor(0,&x,&y,0)) {
//в x,y - координаты точки
}
else //Отказ