OberonCore https://forum.oberoncore.ru/ |
|
Как вставить контрол в конкретную View? https://forum.oberoncore.ru/viewtopic.php?f=24&t=2238 |
Страница 1 из 1 |
Автор: | Виталий [ Понедельник, 18 Январь, 2010 12:20 ] |
Заголовок сообщения: | Как вставить контрол в конкретную View? |
Всем доброго. Хочу сделать разделение управления и данных Есть две вьюшки. В первой предполагаю кинуть контролы, текстовое поле (поля), кнопки... Во вторую по клику на кнопки будут выводиться данные (из БД). как писать данные во вьюшку я понял. А вот как мне вставить контрол в конкретную вьюшку? Нашел только StdCmds.PasteView; но тут не указано в какую конкретно вьюху вставлять. Есть ли способы указать что мол такой то контрол вставляется в такую-то View? |
Автор: | Valery Solovey [ Понедельник, 18 Январь, 2010 13:18 ] |
Заголовок сообщения: | Re: Как вставить контрол в конкретную View? |
Я как-то с этим не работал, поэтому точного ответа дать не могу. Однако: 1. данные вставляют в модель. 2. отображение всего лишь показывает часть модели. Поэтому вопрос должен быть не "как вставить в", а "достаточно ли подготовлено отображение". |
Автор: | Иван Кузьмицкий [ Понедельник, 18 Январь, 2010 13:29 ] |
Заголовок сообщения: | Re: Как вставить контрол в конкретную View? |
Надо использовать либо стандартный контейнер типа FormViews.View, либо делать свою View. В первом случае вставка тривиальна (с помощью модели, конечно), а во втором случае надо реализовать свой метод Restore. |
Автор: | Виталий [ Понедельник, 18 Январь, 2010 14:14 ] |
Заголовок сообщения: | Re: Как вставить контрол в конкретную View? |
Иван, можно маленький примерчик для понимания, или ссылку на описание такого с примерами? |
Автор: | Александр Ильин [ Понедельник, 18 Январь, 2010 14:14 ] |
Заголовок сообщения: | Re: Как вставить контрол в конкретную View? |
Виталий писал(а): Нашел только StdCmds.PasteView Controllers.EditMsg.op = Controllers.paste; .view = вставляемый view. Обрабатывается в HandleCtrlMsg целевого (куда вставляете) view.
|
Автор: | Иван Кузьмицкий [ Понедельник, 18 Январь, 2010 17:10 ] |
Заголовок сообщения: | Re: Как вставить контрол в конкретную View? |
Пример по использованию модели контейнера FormViews.View: Код: MODULE TestForm; IMPORT StdCmds, Ports, Views, Controls, FormGen, FormViews, FormModels; PROCEDURE Do*; VAR p: Controls.Prop; v: Views.View; m: FormModels.Model; BEGIN FormGen.Empty; StdCmds.SetMaskMode; NEW(p); p.link := 'TestForm.Do'; p.label := 'Press me'; v := Controls.dir.NewPushButton(p); m := FormViews.FocusModel(); m.Insert(v, 40*Ports.mm, 30*Ports.mm, 60*Ports.mm, 37*Ports.mm); END Do; END TestForm. ^Q TestForm.Do Ну а пример создания собственного контейнера - да хоть ObxTwins, что ли... |
Автор: | Виталий [ Вторник, 19 Январь, 2010 13:38 ] |
Заголовок сообщения: | Re: Как вставить контрол в конкретную View? |
Цитата: Иван Кузьмицкий О-о-о... Теперь понял. Спасибо. Чето я метод Insert упустил извиду. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |