OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 25 Апрель, 2024 00:38

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
СообщениеДобавлено: Пятница, 14 Март, 2008 17:14 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Вот, появилась потребность обсудить такой вопрос, как внедрение одного контрола в другой.
Например, поле ввода или кнопку в дерево. Такое конструирование новых элементов управления на основе стандартных представляется очень удобным.

В документации по Controls написано, что
Цитата:
В BlackBox элементы управления являются расширенными отображениями. Как и всякое отображение, элемент управления может быть внедрен в любой общий контейнер, такой как форма или текст. Обычно используются формы.

То есть, если контрол не является контейнером, тогда внедрять в него другое отображение принципиально невозможно, это выходит за рамки концепции BlackBox.

Как быть?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 14 Март, 2008 17:35 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Для внедрения отображения, вообще говоря, не обязательно нужно иметь общий контейнер (Containers.Container) - там просто механика общего назначения.
Внедрить вложенное отображение можно в любое другое, если из Restore этого другого вызвать f.InstallFrame(вкладываемоеОтображение). Тонкость контролов в том, что они не рисуют себя сами через Restore, а используют отрисовку от ОС (рисует, фактически их спец. фрейм, StdCFrames-HostCFrames). Я, честно говоря, не знаю, что будет, если из Restore одного контрола (дерева, например) вызвать Views.InstallFrame для другого контрола - но есть подозрение, что это работать будет. Дерзайте!


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB