|
| Дата |
|
USD/RUB | 90.4082 | BTC/USD | 69392.4450 |
|
|
|
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии. |
04.10.2010, 18:45
|
Start Post: Кодеры, выручайте :)
|
Senior Member
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
|
Всем привет.
Сабж такой: на дельфях пишу небольшую софтину, нужно нажать программно кнопку в TWebBrowser. Если у кнопки есть id или name, то вопросов нет. А вот как нажать кнопку, описанную так:
<input type="submit" class="button" value="Sign In" />
|
|
|
04.10.2010, 19:54
|
#12
|
Senior Member
Регистрация: 15.11.2008
Сообщений: 13,236
Бабло: $247846681
|
if (ovElements.item(i).getAttributeNode("type") = 'submit') then
наверное так
|
|
|
04.10.2010, 20:03
|
#13
|
Senior Member
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
|
ТС
Цитата:
Сообщение от imgreen
if (ovElements.item(i).getAttributeNode("type") = 'submit') then
наверное так
|
Сделал так:
if (ovElements.item(i).getAttributeNode('type') = 'submit') then
ovElements.item(i).Click;
Ругается "Invalid Variant Operation"
|
|
|
04.10.2010, 20:04
|
#14
|
Senior Member
Регистрация: 05.10.2009
Сообщений: 687
Бабло: $152005
|
Расправляй компонент на весь экран, и делай клик по кнопке.
|
|
|
04.10.2010, 20:05
|
#15
|
Senior Member
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
|
ТС
Цитата:
Сообщение от aoki
Расправляй компонент на весь экран, и делай клик по кнопке.
|
Покажи как
|
|
|
04.10.2010, 20:09
|
#16
|
Senior Member
Регистрация: 05.10.2009
Сообщений: 687
Бабло: $152005
|
Вот так точку определяй
Цитата:
var Point: TPoint;
begin
GetCursorPos(Point);
Label1.Caption := IntToStr(Point.X) + ' ' + IntToStr(Point.Y);
end;
|
Вот так кликай
Цитата:
SetCursorPos(x1, y1);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
Sleep(100);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
|
Первую в таймер пропиши
|
|
|
04.10.2010, 20:22
|
#17
|
Ебланнед
Регистрация: 07.04.2010
Сообщений: 1,576
Бабло: $0
|
Цитата:
Сообщение от trafbite
<form action="http://ля ля ля.com" method="post" class="ля ля ля">
<input type="hidden" name="ля ля ля" value="" />
<fieldset class="ля ля ля" id="sign">
<input type="text" name="email" value="" id="email" />
<input type="password" name="password" value="" id="password" />
<input type="submit" class="button" value="Sign In" />
</fieldset>
</form>
Вот такая там шняга. мыло и пароль заполняю гуд. Не понятно что за инпут такой первый самый, который hidden.
|
hidden используется для передачи данных между формами на разных страницах. просто туда пишешь параметр и он переносится
html, 1й класс
твой class="ля ля ля" на самом деле тот же id="ля ля ля", если "ля ля ля" больше нигде не используется, как стиль
id=уникальный, class=неуникальный
css, 2й класс
__________________
НЕАДЕКВАТ
|
|
|
04.10.2010, 20:24
|
#18
|
Senior Member
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
|
ТС
Цитата:
Сообщение от aoki
Вот так точку определяй
Вот так кликай
Первую в таймер пропиши
|
Хм, т.е. таким способом софтина "щелкнет" по всему экрану?
Зачем в таймер? При чем, так мы только растянули, а как сам клик совершить то?
|
|
|
04.10.2010, 20:29
|
#19
|
Senior Member
Регистрация: 05.10.2009
Сообщений: 687
Бабло: $152005
|
Саму форму с компонентом растяни на весь экран, сделай другую программу как я сказал и определи с помощью неё точку кнопки которую нужно нажать например 400 и 100.
В том месте твоей программы где нужно нажать кнопку напиши
SetCursorPos(400, 100);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
Sleep(100);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
|
|
|
04.10.2010, 20:45
|
#20
|
Senior Member
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
|
ТС
Цитата:
Сообщение от seeker
hidden используется для передачи данных между формами на разных страницах. просто туда пишешь параметр и он переносится
html, 1й класс
твой class="ля ля ля" на самом деле тот же id="ля ля ля", если "ля ля ля" больше нигде не используется, как стиль
id=уникальный, class=неуникальный
css, 2й класс
|
Ну, дак а как кликнуть то?
|
|
|
04.10.2010, 20:50
|
#21
|
Je suis moine ivre
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
|
Форма это:
1. поля, где есть имя (name) и значение
2. метод (get/post)
3. action - урл, куда сабмитится
Вот и отправляй эти переменные на этот урл гетом(тогда переменные в урле передаются) или постом, в зависимости от того, какой метод указан в форме
|
|
|
|