|
Comanche
|
|
Как сделать у класса "сложное" свойство?18.01.2011, 12:41. Показов 881. Ответов 6
Метки нет (Все метки)
У меня есть класс CMessage, представляющий собой элемент коллекции CMessages. Коллекция - это набор неких почтовых сообщений, а экземпляр класса CMessage - это собственно почтовое сообщение. У данного класса есть куча свойств ('From', 'Subject', 'MessageBody' и т.д. и т.п.). Теперь понадобилось описАть в классе MIME-параметры сообщения. Создал для этих целей следующие строковые свойства:
- ContentType - ContentSubType - ContentBoundary - ContentCharset - ContentTransferEncoding и так далее... Потом подумал: ведь было бы 'круче' (в смысле, что удобнее) создать ОДНО свойство 'Content', и все эти 'Type', 'Boundary', 'Charset' описАть уже как 'суб-свойства'. Ну типа как свойство 'Font', имеющееся почти у каждого VB-контрола: - Text1.Font.Charset = 204 - Text1.Font.Bold = True - Text1.Font.Name = 'Tahoma' (и так далее). Однако, бэйсик не позволяет использовать user defined types в качестве параметров или return types у процедур и функций, объявленных как Public. Значит, объявить это своё свойство 'Content' с типом, указывающим на свой Type, я не смогу. Свойству 'Font' хорошо: оно объявлено как 'StdFont' - это вам не user defined type )Что делать? объявлять Content As ContentClass, где ContentClass - тоже некий класс (со свойствами 'Type', 'SubType' и проч.)? или ещё как? |
|
| 18.01.2011, 12:41 | |
|
Ответы с готовыми решениями:
6
Как заставить свойство "Text" компонента Label забиндиться на свойство TheChar из пользовательского класса Можно ли сделать свойство приватным при наследовании класса? Как сделать сложное адаптивное меню |
|
Hover
|
|
| 19.01.2011, 14:52 | |
|
А разве функции назначения свойств обязательно должны быть public?
|
|
|
0 / 0 / 0
Регистрация: 04.03.2008
Сообщений: 250
|
|
| 19.01.2011, 16:03 | |
|
А как задать свойство извне, если оно не Public?????????
0
|
|
|
0 / 0 / 0
Регистрация: 08.11.2010
Сообщений: 20
|
|
| 19.01.2011, 16:46 | |
|
1. объявлять Content As ContentClass - ДА.
2. Еще должно получиться так: - сделать тлб и там прописать твой UDT - подключить тлб к проекту - прописать паблик свойство с этим UDT
0
|
|
|
Comanche
|
|
| 19.01.2011, 17:18 | |
|
А чем мы обычно делаем TLB?
:-)) в смысле - софт... |
|
|
0 / 0 / 0
Регистрация: 08.11.2010
Сообщений: 20
|
|
| 19.01.2011, 18:10 | |
|
Блокнотом и MIDL.EXE
![]() подсветка в Вижуал С++.
0
|
|
|
Comanche
|
|
| 19.01.2011, 22:16 | |
|
MIDL.EXE? - ах, ну само собой разумеется! и как я мог забыть?!
:-))))))))))) Ну а если без шуток - я вообще не знал, как делать библиотеки типов. Спасибо большое! |
|
| 19.01.2011, 22:16 | |
|
Помогаю со студенческими работами здесь
7
Ссылка на объект как свойство класса Как изменить свойство у одного экземпляра класса?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|