load textbox
dEar / 21.04.2011, 16:15/00:41
Форум:
Добрый день.
В VB есть возможность сделать массив кнопок из одной, копируя исходную нужное количество раз:
Load TextBox1(n + 1)
В CorelVBA выдает ошибку "Can't load or unload this object" . Это ограничение VBA или я что-то неправильно делаю?
Если я правильно помню, то в ВБ есть такая фишка как TextBox1(1), TextBox1(2) и т.д. В ВБА такого нет. В любом случае погугли.
Да, там у кнопок есть и индексы, и хэндлы... Гуглил - где-то предлагают сделать класс, через API. Думал, может есть простое решение
dEar, вот тебе такой вариант
Private Sub UserForm_Initialize()
Dim Mycmd As Control
Set Mycmd = Controls.Add("Forms.TextBox.1", "", True)
Mycmd.Left = 108
Mycmd.Top = 12
Mycmd.Width = 72
Mycmd.Height = 24
end sub
попробуй загнать в цикл, далее меняешь координаты и может даже все получится
Работает!
Я было попробовал до этого
Me.Controls.Add "VB.CommandButton" - выдавало ошибку о некорректном классе. Потом отвлекли и...... Буду копать в этом направлении
Что-то я запутался... А как отловить нажатие на него?
метод Keypress или Click
dEar, посмотри эту ссылку, там пример создания класса и события.
Спасибо, буду в выходные разбираться