Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > Нажатия кнопок Комбо-бокса


Автор: Natapro 20.11.2009, 15:05
Как произвести нажатия кнопок комбо-бокса (меню) на Html странице веб браузера...
Вот как даное нажатие производит программка Imacros она производит с помощю макроса вот код макроса :

Код

TAG POS=1 TYPE=SELECT FORM=NAME:bform ATTR=NAME:bl0 CONTENT=2 



Я попробывала разобрать этот макрос:
FORM=NAME:bform - это название формы комбо-бокса.. 
ATTR=NAME:bl0- Само меню
CONTENT=2 - Это компонент в меню контент 2 тоесть кнопка в выпадающему меню...

Помогите воспроизвести это на ВБ.

Автор: diadiavova 20.11.2009, 18:01
Не понял...что значит нажатие кнопок комбобокса? smile 

Автор: Natapro 21.11.2009, 12:39
user posted image
Я всё разобралась помогите сделать выбор в меню:
bl0-Название меню
CONTENT=2 - компонент в меню, тоесть контент второй
bform-название формы в документе
надо что б нажымало тоесть выбирало программно при нажатии кнопки..

Автор: diadiavova 21.11.2009, 15:38
Natapro, я тебе уже в который раз повторяю, что все твои вопросы не по бейсику, а по объектной модели документа HTML. С ними обращайся в соответствующий форум. На винграде это скорее всего форум по javascript. В чтмл этот элемент называется select, а не комбобокс. Свойство, с которым тебе надо работать называется selectedIndex
http://msdn.microsoft.com/en-us/library/ms534624%28VS.85%29.aspx

Автор: Natapro 21.11.2009, 15:48
ясно, не знала smile топаю туда :(
просто ведь в среде бейсик я на это наткнулась, вот и пишу сюда :(

Автор: diadiavova 21.11.2009, 15:56
Дело в том, что то чем ты занимаешься имеет очень маленькое отношение как к бейсику, так и к .Net Framework. Все твои задачи сводятся к управлению элементами вебстраницы. В бейсике ты получаешь доступ к основным объектам вебстраницы, например через WebBrowser.Document.DomDocument. Это как раз объект document вебстраницы, у него свой набор членов, и через него ты получаешь доступ к остальным объектам документа , а программное управление этими объектами- это уже вопрос, который там знают досконально. Да и тебе придётся изучать его если тебя так интересует веббраузер. А уже вопросы интеграции в бейсик программу можешь и здесь задавать. 

Автор: Natapro 21.11.2009, 15:59
а как вопрос то сформулировать я тогда не пойму, написать как на бейсик это сделать там ? так меня сюда пошлют ведь ? :(

Автор: diadiavova 21.11.2009, 16:48
Ну вообще-то на этот вопрос я уже ответил тебе. Свойству selectedIndex присвой нужный индекс, а если неизвестно какой индекс, тогда берёш коллекцию options и перебираешь её, когда найдёшь нужный элемент, то его свойству selected присвоишь значение true.
А вопрос в том форуме надо было задать так: "Как программно выбрать нужный элемент в объекте select?"

Автор: Natapro 24.11.2009, 14:59
не получилось :( smile 

Автор: diadiavova 24.11.2009, 15:05
Цитата(Natapro @  24.11.2009,  14:59 Найти цитируемый пост)
не получилось
Что у тебя опять не получилось?

Автор: Экскалупатор 24.11.2009, 15:06
Natapro, а что получилось? и как ты это делала, что у тебя могло не получиться...

Автор: Natapro 24.11.2009, 15:09
Цитата(diadiavova @  21.11.2009,  16:48 Найти цитируемый пост)
Свойству selectedIndex присвой нужный индекс

с єтим  smile 

Автор: diadiavova 24.11.2009, 15:25
Вот объясни мне, что тут сложного???? smile 

Автор: Natapro 24.11.2009, 15:35
Цитата(diadiavova @  24.11.2009,  15:25 Найти цитируемый пост)
Вот объясни мне, что тут сложного????

щяс посмотрю

Автор: Natapro 24.11.2009, 16:03
ну это сделала, но оно не работает.
Вот посмотри И макрос этот выделяет ещё форму на странице 
TAG POS=1 TYPE=SELECT FORM=NAME:[B]bform[/B] ATTR=NAME:bl0 CONTENT=2 
можно ли как-то такое и тут сделатЬ ? может в этом проблем а?

Автор: diadiavova 24.11.2009, 16:18
Цитата(Natapro @  24.11.2009,  16:03 Найти цитируемый пост)
ну это сделала, но оно не работает.

Опять 25. А почему у меня работает? smile 
Какой макрос? Ты вообще о чём сейчас опять? smile 

Автор: Natapro 24.11.2009, 17:35
так у нас ведь разные страницы вот я ищу в чом может быть проблема....

Автор: Экскалупатор 24.11.2009, 17:41
Natapro, сдается мне что ты не в том месте ищешь... надо не в страницах искать...(если ты меня понимаешь, конечно)

Добавлено через 1 минуту и 20 секунд
посмотри до чего дядю Вову довела!!! еще пара постов и он тебя либо забанит(скорее всего), либо сдастся и сам сделает(что врятли)...

Автор: Natapro 24.11.2009, 17:48
а хде ?

Добавлено через 14 секунд
в скриптах ?

Автор: diadiavova 24.11.2009, 18:01
Цитата(Экскалупатор @  24.11.2009,  17:41 Найти цитируемый пост)
еще пара постов и он тебя либо забанит(скорее всего)

Банить её не за что, а вот переместить некоторые топики в песочницу руки чешутся smile 
Цитата(Natapro @  24.11.2009,  17:35 Найти цитируемый пост)
так у нас ведь разные страницы вот я ищу в чом может быть проблема.... 

Ну дык ты на своей найди нужный селект и с ним работай

Автор: Экскалупатор 24.11.2009, 18:01
Natapro, все таки не понимаешь... надо смотреть вообще не в компе, книжку возьми что ли... можно еще кое что посоветовать, но не хочу ругаться...

Автор: Natapro 25.11.2009, 00:06
посоветуй ) но  smile 
поидеи оно подгружается с скрипта..
Код

<script src="/js/battle.js?3"></script>

как мне к нему обратитсо

Автор: diadiavova 25.11.2009, 00:21
К скрипту обращаться не надо. Если картинка уже загружена, то обращайся к ней стандартными методами. Другой вопрос - в каком виде она присутствует в документе.
Вообще-то писал уже, что детали таких вопросов тебе в другом форуме объяснят. Я, например, не в курсе, входят ли в коллекцию Images все картинки, или только определённые тегом img. Если второй вариант, то надо просмотреть ещё и теги input с атрибутом type равным image. Да мало ли способов ещё есть. Я всего не знаю. Найдёшь как там отображается картинка - объясню как заменить.

Автор: Natapro 25.11.2009, 00:37
дядьк ВоВка я тепя навена уже запутала , но каккие картинки ? мі не о них говрим ? то другая тема ))))))) smile 
отдохни цуть цуть, я иду книзки цитать smile атьо сфеду с ума последнего холосего целофека туть  smile 

Автор: diadiavova 25.11.2009, 02:14
Ну вообще-то у тебя талант выносить моск. Возможно ты себе не то занятие выбрала smile

Автор: Exai1e 25.11.2009, 02:52
Цитата(diadiavova @  25.11.2009,  02:14 Найти цитируемый пост)
Ну вообще-то у тебя талант выносить моск

 smile 
посты | темы Natapro сводят меня с ума

Автор: Natapro 29.11.2009, 17:26
Цитата(Exai1e @  25.11.2009,  02:52 Найти цитируемый пост)
посты | темы Natapro сводят меня с ума




Цитата(diadiavova @  25.11.2009,  02:14 Найти цитируемый пост)
Ну вообще-то у тебя талант выносить моск. Возможно ты себе не то занятие выбрала 



Соцчуствую васему МОзгу smile) smile 

Автор: diadiavova 29.11.2009, 20:08
Цитата(Natapro @  29.11.2009,  17:26 Найти цитируемый пост)
Соцчуствую васему МОзгу

Вряд ли ему это поможет.

Автор: Natapro 29.11.2009, 21:03
 smile  а как проверить есть ли на странице вобще она ?

Автор: diadiavova 29.11.2009, 21:04
Хто? smile 

Автор: Natapro 29.11.2009, 21:12

Меню это
Цитата(Natapro @  21.11.2009,  12:39 Найти цитируемый пост)
bl0-Название меню


Автор: diadiavova 29.11.2009, 21:16
Меню - она? smile 

Обойди все элементы селекта и проверь их значения.

Автор: Natapro 29.11.2009, 21:18
я б спросила как но тупо выглядить будет думаю  smile 

Автор: diadiavova 29.11.2009, 21:40
У селекта есть коллекция options. Обойди её в цикле и проверяй значение свойства innerHTML каждой опции пока не найдёшь то что надо

Автор: Natapro 29.11.2009, 21:49
smile   я промолчу, итак знаешь что щясь скажу, и пойду молча ломать голову smile

Автор: diadiavova 29.11.2009, 22:27
Цитата(Natapro @  29.11.2009,  21:49 Найти цитируемый пост)
и пойду молча ломать голову 

Главное не мою smile

Автор: Экскалупатор 29.11.2009, 22:51
Natapro, у тебя очень много непонятных тебе самой вопросов. ты б сначала разобралась чего именно тебе нужно, т.е. реши в чем твоя проблема, потом переделай проблему в задачу и реши задачу. а так, я смотрю, тебя кидает из стороны в сторону и ты не знаешь за что браться, начни сначала, найди толковую книжку, разберись с предметной областью, что бы не путаться в понятиях, и когда уже будут конкретные вопросы по реализации, когда будет именно не получатся, а не "не знаю как/что/зачем сделать" тогда б и вопросы задавала.

Автор: Natapro 30.11.2009, 00:43
Так задала некто не помог, выкручююсь с того что есть.

Автор: diadiavova 30.11.2009, 00:57
Natapro, я тебе всё описал. Там ничего сверхъестественного нет.
Код

Sub SelectOptionByText(ByVal selectObject As Object, ByVal optionText) As Object
    For i =0 To selectObject.options.length - 1
        If selectObject.options.item(i).innerHTML = optionText Then
            selectObject.options.item(i).selected = True
        End If
    Next
End Sub
Когда найдёшь нужный тебе селект, вызови у него DomElement и передай этому методу. Второй аргумент - это текст, который ты хочешь выделить.

Видимо тебе надо давать код для копипасты, но так ты ничему не научишься. smile

Автор: Natapro 10.12.2009, 04:56
я вот нашла вродь проблему 
вот нашла нужное мне
Код

Me.WebBrowser1.Document.GetElementsByTagName("ud2")

а как теперь его актевировать ?

Автор: diadiavova 10.12.2009, 11:03
Цитата(Natapro @  10.12.2009,  04:56 Найти цитируемый пост)
а как теперь его актевировать ? 

Что ативировать то? И потом, что ты нашла с помощью этого кода? Список тегов по имени ud2? Так нет в HTML такого тега. Это, конечно, не говорит о том, что его не еможет быт и в документе, но чойт я сомневаюсь.

Автор: Natapro 10.12.2009, 19:08
та это код какойто глюченый, какие б значения я не подставляла хоть "трамываы" заместь у2 пишет что естЬ smile)) 0_0

Автор: diadiavova 10.12.2009, 20:00
Цитата(Natapro @  10.12.2009,  19:08 Найти цитируемый пост)
та это код какойто глюченый, какие б значения я не подставляла хоть "трамываы" заместь у2 пишет что естЬ smile)) 0_0 

Та ап чом а5?

И до речi: ты обiцяла, що iнтернет вiдключат. Сбрехала чi що?

Автор: Natapro 10.12.2009, 20:01
Цитата(diadiavova @  10.12.2009,  20:00 Найти цитируемый пост)
Та ап чом а5?

что этО ?
Цитата(diadiavova @  10.12.2009,  20:00 Найти цитируемый пост)
И до речi: ты обiцяла, що iнтернет вiдключат. Сбрехала чi що?

неа на работе сижу ещё, дома уже нету интернета.. :(


Добавлено через 19 секунд
чi що smile  smile  smile  аахаха

Автор: diadiavova 10.12.2009, 20:07
Цитата(Natapro @  10.12.2009,  20:01 Найти цитируемый пост)
что этО ?

Я спросил "ты о чём опять?"
Цитата(Natapro @  10.12.2009,  20:01 Найти цитируемый пост)
аахаха 

Ну если я над твоими сейчас буду ахахать... Одной буквой ошибся млин. smile 

Автор: Natapro 10.12.2009, 20:33
 smile Видньо пльохо на тепя влияю )) ихихих 
говорю что
Код

Me.WebBrowser1.Document.GetElementsByTagName("ud2")

глюченый код я могу подствить замисть ud2 хоть 123фівафішщвонрфівп и оно всеровно в єтом коде
Код

        If Me.WebBrowser1.Document.GetElementsByTagName("лдожолдж") IsNot Nothing Then
            MsgBox("Есть")
        Else
            MsgBox("Нету")
        End If
    End Sub

пишет что есть 

Автор: diadiavova 10.12.2009, 20:44
Natapro, я видимо вчера ночью уже слегка прогонял, поэтому неправильно написал. Естественно этот метод всегда возвращает коллекцию, другой вопрос, что она может быть пустой.
Код

        If Me.WebBrowser1.Document.GetElementsByTagName("лдожолдж").Count > 0 Then
            MsgBox("Есть")
        Else
            MsgBox("Нету")
        End If
    End Sub

Автор: Natapro 11.12.2009, 03:06
а как єто правельно с проверкой форм сделать ?

Автор: diadiavova 11.12.2009, 04:55
А вот с формами как раз так
Код

If Me.WebBrowser1.Document.Forms("blahblahblah") IsNotNothing Then


Добавлено через 38 секунд
И вообще, когда ты уже домой пойдёшь? Нельзя же столько работать smile

Автор: Natapro 11.12.2009, 05:05
угу б срадостю до 8 утра тут буду, тебя мучать smile 

Автор: diadiavova 11.12.2009, 05:06
 smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)