Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.21;
Скачать: CL | DM;

Вниз

Передвижение курсора   Найти похожие ветки 

 
k-man   (2003-03-02 17:59) [0]

Возможно на этот вопрос уже отвечали, но нет времени искать.
Как из текущего положения курсора мыши передвинуть его на середину к примеру кнопки button1, но передвинуть плавно
чтобы пользователь видел откуда и куда переехал указатель?


 
Rouse_ ©   (2003-03-02 18:11) [1]

SetCursorPos

Желаю успехов


 
jack128 ©   (2003-03-02 18:23) [2]

Только чтобы юзер ВИДЕЛ перемещение курсора надо в цикле это перемещать например

for i := 100 to 200 do begin
SetCursorPos(i,i);
Sleep(55);
end;


 
k-man   (2003-03-02 20:56) [3]

Благодарен за ответы, но есть небольшая загвоздка:
Текущее положение и то в которое должен быть установлен
курсор всегда разные.
Как определить текущее ясно - GetCursorPos да и
новое положение известно. Соль в том чтобы
плавно как делает человек перевести курсор из одного
положения в другое, так что кода видимо будет больше.


 
Anatoly Podgoretsky ©   (2003-03-02 21:05) [4]

Используй LineDDA для получения промежуточных координат трассы.


 
Rouse_ ©   (2003-03-02 21:08) [5]

Ну а если вот так

procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
x,y,x1,y1: Real;
P: TPoint;
begin
GetCursorPos(P);
X:= p.x;
Y:= p.y;
x1:= x/100; // Тут на основе нужных координат рассчитываем смещение
y1:= y/100;
for i:= 1 to 100 do
begin
x:=x-x1;
y:=y-y1;
SetCursorPos(Trunc(x),Trunc(y));
Sleep(50);
end;
end;


Желаю успехов


 
k-man   (2003-03-02 21:34) [6]

Спасибо Rouse, как видишь жизнь заставила
и я теперь тоже "двигаю курсор мышки" ну
и само собой компилирую программы.
k-man (lerroy@mail.ru)


 
jack128 ©   (2003-03-02 21:41) [7]

Тривиальная задача : найти уравнение прямой проходящей через 2 точки (x1, y1) (x2, y2)
y := (y2-y1)/(x2-x1)*x + y1-(y2-y1)/(x2-x1)*x1 ...
Подставляешь x c нужным шагом и вперед


 
k-man   (2003-03-03 20:17) [8]

Анатолий тут обмолвился о некой функции LineDDA,
но почитав справку я не получил вразумительного
ответа о том как ей воспользоваться. Особенно интересуют последние два параметра. Может кто задавался таким вопросом?


 
Anatoly Podgoretsky ©   (2003-03-03 20:22) [9]

Предпоследний это указатель на callback функцию, которая будет принимать зарактеристики следующей точки линии (само уравнение линии будет решаться внутри_, последнее использовать по своему вкусу, лучше просто не использовать.

Суть этой функции, в том, что в нее передаются начальные и конечные координаты, а функция выдет все промежуточные позиции точек, самым оптимальным образом.

То есть полнотью решает проблему и очень простая в использовании.



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

Текущий архив: 2003.04.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
1-67325
Picco
2003-04-08 12:04
2003.04.21
Вопрос по WORD ордовским полям


3-67185
Наташа
2003-03-22 08:42
2003.04.21
Транзакции. откат не работает.


1-67261
kalliopiy
2003-04-11 12:54
2003.04.21
Какой использовать компонент?


14-67556
Max11111
2003-04-04 15:39
2003.04.21
Удаление объектов


1-67297
Карелин Артем
2003-04-11 07:36
2003.04.21
Оптимальное хранение StringList в памяти.