All Forums
 Категория Visio
 Форум Вопросы и ответы
 Создание интерактивного шейпа
Previous Page
Author Previous Topic Topic Next Topic

immortal

Russia
391 Posts

Posted - 01/19/2006 :  14:35:28  Visit immortal's Homepage
quote:
несметное число шейпов

по сути шейп один, разное только содержимое шейплиста и большенство наворотов делают подпрограммы, если в шейплисте есть команда runaddon() или runaddon...() то будте уверены, запускается внешняя программа, первая без передачи параметров, вторая с передачей параметров. Как писать программы чтобы принимать переданные параметры я пока не разбирался.

визио 2003 форэвер

...а вобще-то я белый и пушистый.
Go to Top of Page

immortal

Russia
391 Posts

Posted - 01/19/2006 :  15:01:35  Visit immortal's Homepage
в общем человеку надо это: http://www.immortal.vstu.edu.ru/data/111.jpg

визио 2003 форэвер

...а вобще-то я белый и пушистый.
Go to Top of Page

Tumanov

Russia
1198 Posts

Posted - 01/19/2006 :  19:12:14
Не слабые запросы!
И, как я понял, сделать это в отдельном окошке - не годится. То есть у Вас на листе будет много таких шейпов, каким-то образом соединенных...
А как будут вести себя остальные шейпы, когда один из них в середине рисунка раскроется - допускается перекрытие изображения?
А вот там, где ShapeLoca... - это выглядит так, как будто один требуемый шейп целиком вложен в другой такой же. То есть Вам нужно еще и вложенность обеспечить?
Насколько близок пример - Вы хотите повторить его или это просто отдаленное подобие?

На первый взгляд такую задачу можно решать путем компоновки. Несколько вложенных групп, а одним из элементов группы будет шейп строка с настраиваемым изображением (иконкой).
Но, вообще-то, это будет "тяжелый" шейп. Ведь каждый составляющий шейп будет нести в себе таблицу типа Excel, все на ходу должно пересчитываться. Возможно работать будет медленно. А использовать Вы будете по-существу только изображения, то есть способность вычислять вроде как и не очень нужна. Короче, встраивать такую конструкцию в шейп стоит только в очень обоснованных случаях. Может проще не шейп, а какой-нибудь встраиваемый объект сделать?
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/20/2006 :  06:34:27
Да уж :), запрос мой не самый примитивный. Но хочу заметить в VS2005 это делается средствами Visio2003 не знаю как, но 100% могу дать. Вот что ещё интересно при нажатии на допустим плюсик (+) он не выделяется а работает как кнопка, также идёт выделение строк и всего остального, выделяется только сам шейп, то есть только его можно перемещать и изменять размеры. Любое действие делается одним кликом, а не двумя и всё это дело не испывает абсолютно ни каких тормозов, причём данные загружаются только в мемент нажатия (+). И во опросы:
1. в каких типах файлов могут хранится stencil? может он храниться в DLL?
2. Можно ли в шейп поставить любой контрол из палитры WinControls (то есть кнопку, или combobox как в ворде или экселе с панели инструментов Control ToolBox)?
Есть ещё вопросы но пока всё ;)
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/20/2006 :  06:40:01
>> Tumanov
Ну если будет получаться то повторить, а если возникнут проблемы которые невозможно будет преодолеть то нечто подобное.
Шейпы могут залазить друг на друга это потом можно будет исправить програмно.
Go to Top of Page

Tumanov

Russia
1198 Posts

Posted - 01/20/2006 :  07:50:39
quote:
1. в каких типах файлов могут хранится stencil? может он храниться в DLL?

В DLL его засунуть довольно проблематично. Разве что программу его создания (его ведь можно нарисовать на ходу).
quote:
2. Можно ли в шейп поставить любой контрол из палитры WinControls (то есть кнопку, или combobox как в ворде или экселе с панели

Можно. Вот к этому я и веду. Такой контрол будет оформлен как шейп, содержащий встроенный объект. Методами этого объекта можно пользоваться. Всякие кнопки, даже лист Excel вставляются легко. Вот TreeView вставлять пока не пробовал, не было необходимости :)
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/23/2006 :  14:39:25
А можно пример вставки контрола в шейп? это кажется решит основную часть проблем. И ещё я раньше спрашивал как сделать умные конекторы, если есть возможность то то же хотелось бы посмотреть пример. Заранее большое спасибо.
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/23/2006 :  15:13:01
Вставить контрол получилось, а как сделать так что бы он вёл себя как контрол, а не как шейп?
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/24/2006 :  07:28:40
А ещё есть ли шейп который являлся бы хранилищен шейпов например как контрол Panel или GroupBox. Если нет, то как во внутрь одного шейпа вставить другой (не групировать, а что бы он как бы стал частью другого)?
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/24/2006 :  09:14:57
Я нашёл шейпы Container и Group Box не подскажите как они работают могут ли они являтся контейнеров для других шейпов
Go to Top of Page

brace

Russia
358 Posts

Posted - 01/24/2006 :  13:15:17
visio 2003 через поиск я нашел 5 шт. Container
когда мышку на шейп наводишь появляется подсказка
для чего данный шейп нужен а внизу слово More
на него кликни и много инфы про данный шейп получишь.
Go to Top of Page

Borg

Kazakhstan
20 Posts

Posted - 01/24/2006 :  14:47:50
>> brace - спасибо я даже как то не заметил этого :)))
И ещё вопрос :))))) задолбал наверное уже всех :)
Есть трафарет в Software -> CommonControls кто нибудь про них что нибудь знает то есть они могут вести себя как настояшие или это просто картинки?
Go to Top of Page

brace

Russia
358 Posts

Posted - 01/24/2006 :  15:27:26
мелкософт поддерживает штук 10 форумов по визио
посмотри на них может что полезное есть

http://www.ureader.com/group/129-1.aspx
Go to Top of Page
Previous Topic Topic Next Topic  
Previous Page
Данный сайт является архивом форума visio.artberg.ru, который был закрыт в связи с переходом на новую платформу visio.getbb.ru
Все материалы доступны только для чтения! Если у вас появились вопросы, или вы хотите что-то обсудить, связанное с Visio, обращайтесь на новый форум!
Архив был создан благодаря совместным усилиям Генадия Туманова @Tumanov (visio.artberg.ru), Александра ака @Surrogate (visio.getbb.ru), и Николая Белых @nbelyh (unmanagedvisio.com)