Кодеры, выручайте :) - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB90.4082
BTC/USD69392.4450
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 04.10.2010, 18:45
Start Post: Кодеры, выручайте :) 
  #11
trafbite
Senior Member
 
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
По умолчанию

Всем привет.
Сабж такой: на дельфях пишу небольшую софтину, нужно нажать программно кнопку в TWebBrowser. Если у кнопки есть id или name, то вопросов нет. А вот как нажать кнопку, описанную так:
<input type="submit" class="button" value="Sign In" />
trafbite вне форума  
Старый 04.10.2010, 19:54   #12
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,236
Бабло: $247846681
По умолчанию

if (ovElements.item(i).getAttributeNode("type") = 'submit') then
наверное так
imgreen вне форума  
Старый 04.10.2010, 20:03   #13
trafbite
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"
trafbite вне форума  
Старый 04.10.2010, 20:04   #14
aoki
Senior Member
 
Регистрация: 05.10.2009
Сообщений: 687
Бабло: $152005
По умолчанию

Расправляй компонент на весь экран, и делай клик по кнопке.
aoki вне форума  
Старый 04.10.2010, 20:05   #15
trafbite
Senior Member
 
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от aoki Посмотреть сообщение
Расправляй компонент на весь экран, и делай клик по кнопке.
Покажи как
trafbite вне форума  
Старый 04.10.2010, 20:09   #16
aoki
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);
Первую в таймер пропиши
aoki вне форума  
Старый 04.10.2010, 20:22   #17
seeker
Ебланнед
 
Регистрация: 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й класс
__________________
НЕАДЕКВАТ
seeker вне форума  
Старый 04.10.2010, 20:24   #18
trafbite
Senior Member
 
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от aoki Посмотреть сообщение
Вот так точку определяй


Вот так кликай



Первую в таймер пропиши
Хм, т.е. таким способом софтина "щелкнет" по всему экрану?
Зачем в таймер? При чем, так мы только растянули, а как сам клик совершить то?
trafbite вне форума  
Старый 04.10.2010, 20:29   #19
aoki
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);
aoki вне форума  
Старый 04.10.2010, 20:45   #20
trafbite
Senior Member
 
Регистрация: 18.05.2008
Сообщений: 168
Бабло: $52225
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от seeker Посмотреть сообщение
hidden используется для передачи данных между формами на разных страницах. просто туда пишешь параметр и он переносится
html, 1й класс

твой class="ля ля ля" на самом деле тот же id="ля ля ля", если "ля ля ля" больше нигде не используется, как стиль
id=уникальный, class=неуникальный
css, 2й класс
Ну, дак а как кликнуть то?
trafbite вне форума  
Старый 04.10.2010, 20:50   #21
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Форма это:
1. поля, где есть имя (name) и значение
2. метод (get/post)
3. action - урл, куда сабмитится

Вот и отправляй эти переменные на этот урл гетом(тогда переменные в урле передаются) или постом, в зависимости от того, какой метод указан в форме
Drunk Monk вне форума  
Закрытая тема