0 / 0 / 0
Регистрация: 30.12.2014
Сообщений: 6
1

Создание класса с полями из объектов других классов

30.12.2014, 20:57. Показов 1281. Ответов 2
Метки нет (Все метки)

Здравствуйте, товарищи!
Вопрос вот в чем:
Хочу организовать возможность динамического добавления на форму комплектов объектов (Label и TextBox). Для этого создал два класса:
Класс TExam:
Visual Basic
1
2
3
4
Public Name_ex As Control
Public Typ_ex As Control
Public Num_vopr As Control
Public Num_question As String
Заполнять объект класса решил функцией:
Visual Basic
1
2
3
4
5
6
7
8
9
Public Sub Add_data(Name As String, Type_x As String, Num_que As String, Num_all_que As String, label_eng As String, inc As String)
    Set Name_ex = Me.Controls.add("Forms.label.1", label_eng & "_" & inc & "_" & Name)
    Name_ex.Caption = Name
    Set Typ_ex = Me.Controls.add("Forms.label.1", label_eng & "_" & inc & "_" & Type_x)
    Typ_ex.Caption = Type_x
    Set Num_vopr = Me.Controls.add("Forms.TextBox.1", label_eng & "_" & inc & "_" & Num_que)
    Num_vopr.Text = Num_que
    Num_question = Num_all_que
End Sub
И класс TExams:
Visual Basic
1
Dim TExams As Collection
С добавлением объекта/элемента коллекции класса TExam:
Visual Basic
1
2
3
4
Property Let add_exam(Ind As TExam, Key As String)
    Set TExams = New Collection
    TExams.add Item:=Ind, Key:=Key
End Property
При попытке отладки выдает (см. рис.)
 Комментарий модератора 
Заливайте картинки на форум

Создание класса с полями из объектов других классов


Кобчиком чувствую, что необходимо передавать в Add_data ссылку на пользовательскую форму, но как ... знаний не хватает.
Гуглю уже третий день изящного решения не нашел.

З.Ы. Реализация с массивами объектов создаваемых и размещаемых на форме в момент инициализации оной вышла очень громоздкой и медленной. Объектов всегда разное кол-во. И их может быть от пары до нескольких десятков.
Собственно вопрос: Где накосячил в приведенном коде? Что вызывает ошибку? (почти один вопрос)
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.12.2014, 20:57
Ответы с готовыми решениями:

Преобразования объектов классов в объекты других классов
Задача типа обмен валют. Нужно конвертировать старый фунт стерлинг(фунт, шиллинг и пенсы) в доллары...

Передача объектов дочерних классов через массив объектов родительского класса в функцию
Здравствуйте. Возможно, вопрос больше относится к теории ООП, но все же я не решился задавать его в...

Создание классов с конструкторами, полями, методами
Здравствуйте! Нужно определить класс Dot,который имеет: 1.закрытое поле int x, обозначающее...

Доступ к данным класса из других классов
Здравствуйте, я уже день мучаюсь над вопросом. У меня есть class MonitorFollderClass { ...

2
Заблокирован
30.12.2014, 21:22 2
Лучший ответ Сообщение было отмечено Agofist как решение

Решение

Там у вас есть такой момент
Me.Controls.add - надо чтобы это выполнялось непосредственно в модуле формы
так-как, только у формы есть класс Controls и процедура add
а (Me), это только ссылка на экземпляр формы (или класса)
в таком случае, попробуйте вызвать по названию:

UserForm1.Controls.add(
или
Set NewForm= new UserForm1
NewForm.Controls.add(

Добавлено через 2 минуты
посмотрел картинку, так и есть, ошибка означает метод не найденн
1
0 / 0 / 0
Регистрация: 30.12.2014
Сообщений: 6
30.12.2014, 21:29  [ТС] 3
Рецепт номер раз подошел. Большое спасибо. Теперь буду бороться с коллекцией.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.12.2014, 21:29

Компиляция класса с аргументами из других классов
Здравствуйте. Есть проблема с компиляцией параметров, инициированных не внутри данного класса, а,...

JSON.NET Сериализация класса с сылками на переменные других классов
Доброго времени суток! Появилась потребность не создавать отдельный класс для сериализации и...

В случае наследования от данного класса других классов, строки выводить разными цветами
Используя Visual Studio, создайте проект по шаблону Console Application. Требуется: Создайте...

Объявление класса, создание экземпляров класса. Наследование классов
Вообщем начал делать программу:"Создать класс Матрицы, обеспечивающего размещение матрицы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.