|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
7, 2007 в книге есть форма, на ней кнопки, списки, List/ComboBox и т.д..... Проблема: хочу написать тест проверки, для этого в коде надо прописать имитацию: нажатия кнопки выделение строк в ListBox(приход).... Код: vbnet 1. 2.
не получается... Исправьте, плз, или подскажите Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2015, 12:03 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
1. У формы ShowModal=False 2. В коде формы у нужных процедур изменить Private Sub ... на Public Sub ... 3. При наборе имени процедуры с точкой эти паблики появятся в выпадающем списке как методы -> MyForm.приход_DblClick ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2015, 14:38 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Казанский, Спасибо, но форма должна оставаться модальной - с нее и запуск теста MyForm.приход_DblClick пробовал - не проходит А за паблик - лтдельное спасибо, забыл - уже когда-то нгаступал на эти грабли исчо раз спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2015, 15:53 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
так и получается..... Кто подскажет - как используются параметры ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) Мне нужно обратиться к нажатию в Form1.ListBox1_DblClick(????? ?????? ....????) но какие параметры надо ввести - не понимаю.... подскажите, плз. Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2015, 11:36 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Stepler, Никакие не надо и никакие нельзя. Эти параметры передаются формой в событие и не допускается передача своих параметров. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2015, 15:11 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
The_Prist, А сам параметр Cancel отвечает за действие ОТМЕНЫ события. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2015, 15:12 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Код: vbnet 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2015, 01:22 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Необязательно. Можно передать, например, 0, если проверка проводиться не будет. А можно в объявлении указать Optional и вообще ничего не передавать. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2015, 09:50 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Alibek B.Необязательно. Можно передать, например, 0, если проверка проводиться не будет. А можно в объявлении указать Optional и вообще ничего не передавать. Нет. Проверьте сами ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2015, 12:12 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Давно не программировал, а проверять не на чем. Однако не вижу причины, почему не будет работать. При написании классов или ActiveX я в подобных событиях всегда объявлял Optional Cancel As Boolean = False и это прекрасно работало. В декларации события указано ByVal, поэтому передавать можно любой тип данных, хоть Null. Ну а Optional структуру декларации не меняет, внутри процедуры вообще не имеет значения, аргумент был Optional или нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2015, 12:32 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
Alibek B.Однако не вижу причины, почему не будет работатьПотому что данные события на форме можно сказать зарезервированы и не подлежат изменению. Это внутри своих собственных процедур Вы можете добавлять и изменять аргументы - здесь так не получится. Можете передать аргумент строго типизированный, что в большинстве случаев не надо - проще прямо внутри процедуры сделать все нужные обработки(по количеству кода будет столько же). Alibek B.В декларации события указано ByValByVal не разрешает передать любой тип данных. Он лишь указывает будет ли создан новый экземпляр в памяти или же обращение будет идти к первоначально созданному. Он позволит, если изначально процедура принимает параметр As Variant. А т.к. там уже строго указан тип данных - то при попытке передачи параметра с иным типом данных получите ошибку. Вы все же сначала попробуйте свои советы на практике...Людей же в заблуждение вводите - будут сейчас тыркаться и получать ошибки. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2015, 12:03 |
|
имитация нажатия на форме экселя
|
|||
---|---|---|---|
#18+
The_PristПотому что данные события на форме можно сказать зарезервированы и не подлежат изменению. Действительно. Видимо память подводит и я перепутал с самописными компонентами. The_PristByVal не разрешает передать любой тип данных. Он лишь указывает будет ли создан новый экземпляр в памяти или же обращение будет идти к первоначально созданному ByVal или ByRef означает, будет ли передаваться аргумент по значению или по ссылке. Для скаляров передача по значению одновременно осуществляет приведение типов (если оно возможно). MSForms.ReturnBoolean, как оказалось, является объектом (Class), а не перечислением (Enum), поэтому мой совет действительно невыполним. The_Pristбудут сейчас тыркаться и получать ошибки. Это не всегда плохо. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2015, 14:50 |
|
|
start [/forum/topic.php?fid=60&msg=38883031&tid=2156019]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 297ms |
total: | 423ms |
0 / 0 |