Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
2 / 2 / 0
Регистрация: 17.09.2010
Сообщений: 38
1

Работа с Web-формой

30.04.2012, 13:46. Показов 1093. Ответов 3
Метки нет (Все метки)

Доброго времени суток!

Написал программу, которая автоматически вводит данные в TextBox'ы и нажимает кнопки на сайте через WebBrowser, но возникла проблема, каким образом выбрать на сайте нужное поле из ComboBox?

Ну что бы понятней было покажу HTML код:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<div class="inputHolder">
  <div>
    <label for="createAccountQuestion">Security Question</label>
    <select name="question" id="createAccountQuestion" class='input' tabindex="7">
      <option value="0" selected="selected">- Select - </option>
      <option value="What was your first teacher's last name?">What was your first teacher's last name?</option>
      <option value="What is your primary frequent flyer number?">What is your primary frequent flyer number?</option>
      <option value="What is your oldest child's nickname?">What is your oldest child's nickname?</option>
      <option value="What is the name of your favorite sports team?">What is the name of your favorite sports team?</option>
      <option value="What is the name of your best friend from childhood?">What is the name of your best friend from childhood?</option>
      <option value="What was the make of your first car?">What was the make of your first car?</option>
      <option value="What was the name of your first boss?">What was the name of your first boss?</option>
      <option value="What was the last name of your best man (or maid of honor) at your wedding?">What was the last name of your best man (or maid of honor) at your wedding?</option>
      <option value="Where did you spend your childhood summers?">Where did you spend your childhood summers?</option>
      <option value="Who is your all-time favorite movie character?">Who is your all-time favorite movie character?</option>
    </select>
  </div>
</div>
Так, вот каким образом сделать так, что бы автоматически выбиралось, например, "Who is your all-time favorite movie character?"

С заполнение полей и нажитием кнопок я разобрался:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
void __fastcall ClickButton(String Name)
{
  if(Form1->WB->Document )    {
    TComInterface<IHTMLDocument2> pDocument;
    Form1->WB->Document->QueryInterface(IID_IHTMLDocument2, (LPVOID*)&pDocument);
    if( pDocument )        {
      TComInterface<IHTMLElementCollection> pCollection;
      pDocument->get_all(&pCollection);
      if( pCollection )            {
        TComInterface<IDispatch> pDisp;
        pCollection->item(TVariant(WideString(Name)), TVariant(0), &pDisp);
        if( pDisp )                {
          TComInterface<IHTMLElement> pElement;
          pDisp->QueryInterface(IID_IHTMLElement, (LPVOID*)&pElement);
          if( pElement )                    {
            pElement->click();
          }
        }
      }
    }
  }
} //---------------------------------------------------------------------------------
void __fastcall Email(String Name,String Data)
{
  TComInterface<IHTMLDocument2>          pDoc;
  TComInterface<IHTMLElementCollection>  pColl;
  TComInterface<IDispatch>               pTmpDisp;
  TComInterface<IHTMLInputElement>       pElement;
  TComInterface<IDispatch>               pDisp;
  if ( SUCCEEDED (Form1->WB->Document->QueryInterface(IID_IHTMLDocument2, (LPVOID*)&pDoc)))    {
    if ( SUCCEEDED (pDoc->get_all(&pColl)))                 {
      if ( SUCCEEDED (pColl->item(TVariant(WideString(Name)), TVariant(0), &pDisp))) {
        pElement = pDisp;
        pElement->put_value(WideString(Data));
      }
    }
  }
}
А вот, как выбрать из ComboBox...

Буду брагодарен за любую информацию =)
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.04.2012, 13:46
Ответы с готовыми решениями:

Работа с формой
Подскажите пожалуйста, как ввести на форму число в 16 теричке с помощью кнопки Edit? Например, в...

Работа с формой
Подскажите, как можно форму вырезать по рисунку, имеющий определенный прозрачный цвет?

Работа с формой в потоках
Я переделал под Билдер MSDN-вский пример с созданием потоков. В консольном приложении он нормально...

Работа с формой в Sleep
Здравствуйте! Подскажи, у меня в программе есть пара Sleepов, 1-5 секунд. Но во время слипа, форма...

3
0 / 0 / 0
Регистрация: 18.03.2013
Сообщений: 2
06.08.2013, 13:07 2
Добрый день. Вы так и не узнали, как это можно реализовать. Встал такой же вопрос, ничего не могу найти-((
0
Эксперт С++
8300 / 6130 / 614
Регистрация: 10.12.2010
Сообщений: 28,661
Записей в блоге: 30
11.08.2013, 03:28 3
Думаю актуально.

Другая тема: Заполнение полей на сайте
0
LK
Заблокирован
11.08.2013, 03:59 4
Еще где-то было о чисто пхп-шном в стиле GetElementById и GetElementByName .
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.08.2013, 03:59

Работа с динамически созданной формой
На Form2 расположены TabControl1 и Button1. При нажатии на Button1 динамически создается форма с...

Symfony2, работа с типом Collection, работа с базовой формой
Здравствуйте. Осваиваю создание CRUD приложения на Symfony 2, на примере. Однако, возникают...

Работа с формой
Передо мной стоит задание сделать возможность предварительного просмотра формы перед отправкой,...

Работа с формой
Есть код: &lt;?php header (&quot;Content-Type:text/html; charset=UTF-8&quot;); ini_set ('display_errors', 1);...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru