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

Вниз

Как программно навести курсор на ссылку в документе, загруженном   Найти похожие ветки 

 
acsoft ©   (2003-08-07 19:57) [0]

Как программно навести курсор на ссылку в документе, загруженном в TWebBrowser и щелкнуть на ней?


 
Fider58   (2003-08-07 20:05) [1]

А можно вопрос? А зачем? Чтобы WebBrowser загрузил страницу? :)


 
Fider58   (2003-08-07 20:10) [2]

О, стормозил, извиняюсь. Imho, никак. Или в загруженом документе искать соответствующий тег.


 
acsoft ©   (2003-08-08 07:25) [3]

Не, ну можно же использовать SendMessage,... наверно


 
acsoft ©   (2003-08-08 07:55) [4]

Меня не так поняли. Все гораздо проще. Все файлы написаны мной и хранятся на жестком диске, так что я изначально знаю координаты X и Y ссылки, Могу использовать функцию SetCursorPos(X, Y: Integer) для перемещения курсора. А как сгенерировать нажатие кнопки мыши? Пробую SendMessage(webbrowser1.Handle, WM_LBUTTONDOWN, 0, 0); Но не работает. Наверно параметры
передаю неправильно.


 
Palladin ©   (2003-08-08 07:57) [5]

да что ты говоришь... ты прямо координаты знаешь...
нуну...


 
NAlexey ©   (2003-08-08 09:14) [6]

Вапще бред. Зачем двигать програмно мышь? Зачем?!?! Вот всегда как не встречаю такой вопрос про движение курсора мыши и нажатия в определенном месте ли экрана, кнопке ли, сразу вопрос(АХТУНГ!) - зачем?!?!


 
acsoft ©   (2003-08-08 11:06) [7]

Хорошо. Это будет такой демонстрационный проект. В котором пользователь будет видеть пермещение мыши и т.п. Зачем вам? Лучше помогите, если сможете.


 
acsoft ©   (2003-08-08 11:30) [8]



 
NAlexey ©   (2003-08-08 11:34) [9]

>В котором пользователь будет видеть пермещение мыши и т.п.
Нет уж простите:) Я упрямый. Такие вещи делаются в специальных программах. СНИМАЮТСЯ(как на видеокамеру)! необходимые действия, а потом просто проигрыватся. мне с трудом верится что вообще когда нибудь может понадобится двигать курсор мыши программно. Отрекись пока не поздно :)


 
MacroDenS ©   (2003-08-08 11:34) [10]

Да а анимашку нарисовать и в TAnimate с ней поработать видимо не судьба?


 
Palladin ©   (2003-08-08 11:38) [11]

есть wh_cbt


 
acsoft ©   (2003-08-08 11:45) [12]

Что такое wh_cbt?


 
acsoft ©   (2003-08-08 11:47) [13]

>Такие вещи делаются в специальных программах. СНИМАЮТСЯ(как на >видеокамеру)!

Я лично писал такую программу, и она используется в нашей фирме уже год. Теперь хочу так!


 
Palladin ©   (2003-08-08 11:50) [14]

это в справке смотри Windows SDK


 
Yanis ©   (2003-08-08 12:00) [15]

To acsoft © (08.08.03 07:55)
>Все файлы написаны мной и хранятся на жестком диске, так что я изначально знаю координаты X и Y ссылки, Могу использовать функцию SetCursorPos(X, Y: Integer) для перемещения курсора.
А что координаты то всегда одинаковые? Это типа в окне твой броузер находится? Или без окна, что у него координаты то одинаковые всегда.
> Это будет такой демонстрационный проект. В котором пользователь будет видеть пермещение мыши и т.п.
Мышью двигать могут всё, т.е. многие. А почему именно в TWebBrowser?


 
acsoft ©   (2003-08-08 12:20) [16]

И потом, идея такова. Сидят люди, которые в инете в жизни не были. Нужно им показывать - мышь сюда, нажать тут... А если новый сайт понадобится, что ж мне новый avi записывать. Я лучше что-то вроде макроса забью в текстовый файл, типа

CursorPosition=20,20
Wait=1000
CursorPosition=50,70
Click
и т.д.

А о размерах avi-файла тоже нужно задумываться. На винтах всего 3 Гб. И самое главное, все это нужно внедрить в уже работающую программу с TWebBrowser"ом.

Все бы ничего, но sendmessage упорно отказывается посылать сообщение в TWebBrowser, в другие компоненты, пожалуйста - нажимай кнопки, устанавливай фокус, хоть содержимое OLE-container"a запускай по-извращенчески, а здесь не посылает. Может что-нибудь типа handle загруженного документа нужно указывать, бред какой-то...
Не получается даже просто щелкнуть на документе, Бог с ней с ссылкой. Я пробовал с HTML"ом, в котором OnClick происходит следующее "javascript: document.write("Нажата мышь")" (сразу
предупреждаю, если нормально нажимать мышь, это работает).


 
Yanis ©   (2003-08-08 12:44) [17]

Так ты как пробуешь?
Вот так:

SendMessage(webbrowser1.Handle, WM_LBUTTONDOWN, 0, 0);

А ведь клик это два события, может так сработает:

SendMessage(webbrowser1.Handle, WM_LBUTTONDOWN, 0, 0);
SendMessage(webbrowser1.Handle, WM_LBUTTONUP, 0, 0);


 
NAlexey ©   (2003-08-08 12:44) [18]

Не укладывается это как то в голове, представь:
Держишь ты руку на мыши, никуда не дергаешь. Оп! Курсор поехал туда, курсор поехал сюда... Жуть.
Для начала попробуй поставь в настройках мыши чтобы она по умолчанию наводилась на кнопку ОК в диалогах, и поработай некотрое время, поймешь.


 
MacroDenS ©   (2003-08-08 18:14) [19]

А вообще нормальные тренажерные программыреальную мышу не юзают, потому как в тот момент, когда идет демонстрация, юзверь может захотеть куда-нидь кликнуть, и че при этом он будет думать, когда мыша от него убегает в неясном направлении?

Не делай токой паги, юзверь не простит! На крайняк лучше уж помеси как-нидь имадж и двигай его ну и картинки в виде указателей мыши в него в нужное время подгружай, просто ссылку, то хоть активировать надеюсь умеешь.

Дерзай!


 
Е-Моё имя ©   (2003-08-08 18:17) [20]

SendMessage(webbrowser1.Handle, WM_LBUTTONDOWN, 0, 0);
с браузером не прокатит

mouse_event - на раз работает ;)


 
Е-Моё имя ©   (2003-08-08 18:24) [21]

я себе так делал
mouse_event(MOUSEEVENTF_LEFTDOWN or MOUSEEVENTF_ABSOLUTE,10,10,0,0);
mouse_event(MOUSEEVENTF_LEFTUP or MOUSEEVENTF_ABSOLUTE,10,10,0,0);


 
acsoft ©   (2003-08-09 10:00) [22]

>Е-Моё имя

Мужик, ты крут!
Это работает, немного не так, как хотелось бы, но это первый серьезный сдвиг в казалось уже "забрасываемом" мной проекте.
Но вопрос все же пока открыт, я еще буду потом спрашивать, если что...

------------
>NAlexey

>Держишь ты руку на мыши, никуда не дергаешь. Оп! Курсор поехал туда, курсор поехал сюда...

Жуть.

Да нет, юзер нажимает кнопку "Демонстрация" (вернее я за него это делаю), и уже потом курсор поехал туда, курсор поехал сюда :)

------------
>А вообще нормальные тренажерные программы реальную мышу не юзают, потому как в тот момент,
>когда идет демонстрация, юзверь может захотеть куда-нидь кликнуть, и че при этом он будет
>думать, когда мыша от него убегает в неясном направлении?

НУ, он нажмет "Esc" :), и потом, если сделать демонстрацию, например во Flesh, все равно придется что-то нажимать, чтобы её остановить.

А с картинкой вместо реального курсора я стормозил. Не догадался, но сейчас уже все и так работает...



Спасибо всем, кто участвовал...


 
Palladin ©   (2003-08-09 10:05) [23]

незачто всем кто не понял



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

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

Наверх




Память: 0.53 MB
Время: 0.014 c
1-68408
han
2003-08-07 11:32
2003.08.21
перестановка в массиве


3-68195
Vorobyev Sergey
2003-07-25 15:13
2003.08.21
Задачка SQL-щикам! Возможно ли следующее одним SQL запросом..


1-68276
ossa
2003-08-07 09:21
2003.08.21
Undeclared identifier: FileExicts как устранить ошибку или


14-68554
Igorek
2003-08-04 16:57
2003.08.21
Вечный вопрос программиста -


7-68572
Pliajnik
2003-06-07 12:35
2003.08.21
Как распечатать на принтере StringGrid c данными?