powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поменять свойства группы контролов - в VB5 не удается
6 сообщений из 6, страница 1 из 1
Поменять свойства группы контролов - в VB5 не удается
    #36322108
Vili
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VB5, Изменение свойств группы контролов – не хочет менять 

В качестве примера сделано:
на форме три TextBox и одна кнопка Command1. TextBox-ы организованы в группу Group1
(в свойствах Tag этих TextBox-ов - Group1)
Далее код для кнопки:
Private Sub Command1_Click()
Dim ind As Long
For ind = 1 To 3
If Form1.Text(ind).Tag = "Group1" Then
Form1.Text(ind).BackColor = &H80000012
End If
Next
End Sub

Вопрос – почему же этот самый (ind) здесь не работает? Выдает ошибку при компиляции: Method or data member not found.
Если вместо (ind) подставить просто индекс контрола(1или 2.. без скобок), то понятно - все нормально. Что не так я делаю?
...
Рейтинг: 0 / 0
Поменять свойства группы контролов - в VB5 не удается
    #36322349
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vili
Вопрос – почему же этот самый (ind) здесь не работает? Выдает ошибку при компиляции: Method or data member not found.
Если вместо (ind) подставить просто индекс контрола(1или 2.. без скобок), то понятно - все нормально. Что не так я делаю?
Я могу лишь предположить, что вы каждый TextBox рисовали.
Попробуйте их вех удалить. Затем нарисовать один TextBox, правой кнопкой мыши по нему нажмите и выберите копировать.
А потом сделайте мышкой вставку. Пишу всё по памяти, Visual Basic-а установленного под рукой нет.
Во вреям вставки должно выскочить окошко, по смыслу означающее, что типа хотите, создать новый контрол либо массив контролов. Надо быбрать то, что соответствует массиву. Тогда у вас создаться TextBox с таким-же именем как и предыдущий, но у них будет отличаться свойство, не помню какое, возможно Tag. Сделать вторую вставку и появитсья третий TextBox.
К примеру если у вас первым был TextBox1, то ко всем элементам вроде можно будет обращаться так TextBox(i), где i от 1 до 3.
Замечу Group в данном случае роли не играет.
...
Рейтинг: 0 / 0
Поменять свойства группы контролов - в VB5 не удается
    #36322382
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Vili
> Вопрос – почему же этот самый (ind) здесь не работает? Выдает ошибку при компиляции: Method or data member not
> found.


Есть массив контролов, но я не знаю за VB5. Если там тоже есть,тогда нужно им устанавливать свойство Index и обращение к
ним будет такое:
Код: plaintext
If Form1.Text1(ind).Tag = "Group1" Then
Но у них будут общие обработчики событий, в каждый обработчик будет дополнительно передаватся индекс "сработавшего"
контрола.
Если не массив контролов, тогда сделать такой перебор контролов:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Dim c As Control
For Each c In Me.Controls
    If TypeOf c Is TextBox Then
        If c.Tag = "Group1" Then
            c.BackColor = &H80000012
        End If
    End If
Next c


> Если вместо (ind) подставить просто индекс контрола(1или 2.. без скобок), то понятно - все нормально. Что не так
> я делаю?

Пытаешся работать с одиночным объектом как с коллекцией или массивом объектов

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Поменять свойства группы контролов - в VB5 не удается
    #36322407
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос
Есть массив контролов, но я не знаю за VB5. Если там тоже есть,тогда нужно им устанавливать свойство Index
Да, точно, свойство Index, никак не мог вспомнить. Да массивы контролов есть в VB5.
...
Рейтинг: 0 / 0
Поменять свойства группы контролов - в VB5 не удается
    #36322505
Vili
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо Всем, и правда, только через массив и свойство - Индекс
Тема закрыта.
...
Рейтинг: 0 / 0
Поменять свойства группы контролов - в VB5 не удается
    #36322598
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Vili
> Спасибо Всем, и правда, только через массив и свойство - Индекс

Почему только? Я дал пример как это сделать не прибегая к массивам

> Тема закрыта.

Хозяин - барин

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поменять свойства группы контролов - в VB5 не удается
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]