Главная страница
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.02 c
3-67122
Z_man7777
2003-04-02 11:53
2003.04.21
Есть поблемка связаная с выборкой данных из БД.


6-67429
Roman Go
2003-02-26 11:25
2003.04.21
Кто нибудь видел прогу?


7-67576
Style
2003-02-08 01:20
2003.04.21
COM порты... как проюзать


14-67450
Dimodim
2003-04-02 07:53
2003.04.21
Как посчитать Лапласа функцию


14-67499
Sheng
2003-04-01 17:14
2003.04.21
А по делу... Может кто знает, как ставить sohoLib?