Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Как создать элемента на форме VB 6.0 динимически Добавлено: 15.06.07 11:05  

Автор вопроса:  valera

Ответить

  Ответы Всего ответов: 22  

Номер ответа: 16
Автор ответа:
 valera



Вопросов: 1
Ответов: 9
 Профиль | | #16 Добавлено: 16.06.07 15:06
Достопочтимый Сударь!
Не сочтите за труд, подсказать еще разок.
Теперь уже в среде VBA Excel.

1. Не могу создать объект (кроме кнопки), поддерживающий события. Так при записи:
Dim WithEvents TextBox1 As TextBox
выдает ошибку "Object does not sourse automation events".
Такой проблемы не было в VB 6.0

2. Если создавать объект, без поддержки событий
Dim TB1 As TextBox
........
Set TB1 = Me.Controls.Add("Forms.TextBox.1";)
, то выдает ошибку 13 - Несовпадение типов.
Стоит же мне в строке описания добавить любую переменную (например, t), но обязательно правее той объектной переменной, которую собираюсь использовать в программе, то все заработает.
Dim TB1, t As TextBox
........
Set TB1 = Me.Controls.Add("Forms.TextBox.1";)


Ответить

Номер ответа: 17
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #17 Добавлено: 16.06.07 16:14
"Object does not sourse automation events".

надо:
Public WithEvents TB1 As MSForms.TextBox

Dim TB1, t As TextBox

означает:
Dim TB1 As Variant, t As TextBox





Ответить

Номер ответа: 18
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #18
Добавлено: 16.06.07 16:43
Стоит же мне в строке описания добавить любую переменную (например, t), но обязательно правее той объектной переменной, которую собираюсь использовать в программе, то все заработает.
потому что имя контрола - это обязательный параметр

Ответить

Номер ответа: 19
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #19
Добавлено: 16.06.07 17:27
блин, у них тут на ВБА все вообще подругому:

Option Explicit
Dim MyTextBox As Control

Private Sub CommandButton1_Click()
    Set MyTextBox = Me.Controls _
    .Add("Forms.TextBox.1", "MyTextBox", Visible)
End Sub
((

Ответить

Номер ответа: 20
Автор ответа:
 valera



Вопросов: 1
Ответов: 9
 Профиль | | #20 Добавлено: 18.06.07 10:36
Добрый день!
Извините,что отвечаю не вовремя.
На ответ приношу Еще раз большое Спасибо!
Добавить имя коллекции перед контролом сходу не догадался.
Спасибо также и всем ответившим на мой вопрос.

Ответить

Номер ответа: 21
Автор ответа:
 valera



Вопросов: 1
Ответов: 9
 Профиль | | #21 Добавлено: 19.06.07 14:22
Добрый день Достопочтимый Сударь!
Если я Вас сильно не напрягу очередными вопросами, то
может быть Вы укажите мне на более короткий путь их решения!
Надо сказать, что проблемы, описанные ниже я решил, но, как мне кажется, не оптимально.
1. Программный запуск формы Excel из Visual Basic. (Кроме формы мне пришлось еще программно создавать модуль, в котором вызывать форму, и наконец методом Run запускать макрос модуля. Мне кажется, что это все ровно что "чесать правой рукой левое ухо";).
2. Запускать команды интерфейса Excel и VBA. (Что я сумел: добавить в меню Excel или VBA команду, открывающую диалог и имеющее свой ID, выполнить ее методом Execute, и обратно удалить ее из меню. Однако, когда добавляю в меню команду, которая сразу выполняет действия, например, ......Add ID:=186 - команда Continue окна VBA, то выполнить ее уже не могу).

Ответить

Номер ответа: 22
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #22 Добавлено: 20.06.07 02:02
valera, Скорее всего я не понял вопрос.
И к сожалению (к счастью) не занаю, что это такое будет. Если, как я предполагаю,что exel = генератор отчетов,то не следует нвешывать на него игрушки с новогодней елки(лишние кнопки, макросы,и того хуже Usercontrols, Modiles)
Все что можно с ним проделать, деляеться не выходя ИЗ VB6.
 Изаини, по существу сказать не чего.

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам