Форум пользователей Visio http://visio.getbb.ru/ |
|
Шейпы с полями данных http://visio.getbb.ru/viewtopic.php?f=6&t=990 |
Страница 1 из 4 |
Автор: | powercat [ 18 июл 2016, 15:32 ] |
Заголовок сообщения: | Шейпы с полями данных |
Привет. Такая задача...нужно сделать неограниченное количество шейпов с полями данных...Например, объект автобус и поля - дети, взрослые, багаж. Рисую этот объект, в поля ввожу числа (сколько детей, взрослых и багажа поедут). Создаю второй объект с этими же полями, ввожу другие числа. Потом буду это обрабатывать, но это другая задача. Главное - что-то типа создания объекта "Автобус" и далее создание его экземпляров на листе, причем обязательно с полями. Сейчас я в качестве поля использую свойство эээ...вроде бы текст (да, точно, текст), чтобы задать какое-либо число, а требуется задавать несколько чисел... Куда копать? |
Автор: | Surrogate [ 18 июл 2016, 15:49 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): Сейчас я в качестве поля использую свойство эээ... Ты про ShapeData (Custom Properties) ?powercat писал(а): чтобы задать какое-либо число, а требуется задавать несколько чисел... в смысле несколько чисел или несколько полей ? powercat писал(а): Куда копать? может проще создать мастер с нужным числом полей ?или я не понял глубины глубин |
Автор: | powercat [ 18 июл 2016, 15:58 ] | ||
Заголовок сообщения: | Re: Шейпы с полями данных | ||
Вот, нарисовал пример. Пусть будет панель управления, но можно и без нее - чтобы можно было чем-нить создать событие. При каждом клике должен создаваться экземпляр объекта "автобус". Все поля уже должны быть в нем, причем не просто шейпами, а мне потом надо будет их обработать (посчитать, сколько всего будет всех в конечном пункте). Сейчас я могу обратиться к шейпу и взять его свойство текст, а как сделать много полей - непонятно (( Надо что-то типа обращения - автобус1.поле1.текст, автобус1.поле2.текст и т.д.
|
Автор: | Surrogate [ 18 июл 2016, 16:14 ] | |||
Заголовок сообщения: | Re: Шейпы с полями данных | |||
Surrogate писал(а): может проще создать мастер с нужным числом полей ? как то так
|
Автор: | powercat [ 18 июл 2016, 16:18 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
аа...это...куда смотреть? ))) Файл скачал, а что дальше с ним делать - не знаю )) |
Автор: | powercat [ 18 июл 2016, 16:30 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
Surrogate писал(а): Surrogate писал(а): может проще создать мастер с нужным числом полей ? как то такЭто какой раздел? Никогда с таким не работал |
Автор: | Surrogate [ 18 июл 2016, 16:31 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
перезалил файл. и добавил картинку в предыдущем сообщении. качни снова по двойному клику всплывет окно - вводи в него данные. они автоматом изменятся в твоем автобусе Цитата: Никогда с таким не работал век живи - век учись
|
Автор: | powercat [ 18 июл 2016, 16:34 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
Благодарю. Теперь два вопроса: 1. Как это сделать - где описан процесс создания такой прикольной штуки? 2. Как обратиться теперь к этим полям? |
Автор: | Surrogate [ 18 июл 2016, 16:44 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): Как это сделать - где описан процесс создания такой прикольной штуки? такого мануала не могу припомнить. но на форуме схожие вещи часто обсуждаем powercat писал(а): Как обратиться теперь к этим полям? вот такКод: Dim sh As Shape
Set sh = ActiveWindow.Selection.PrimaryItem ' получить значения полей Debug.Print sh.Cells("Prop.child"), sh.Cells("Prop.Adult"), sh.Cells("Prop.Bagage") ' задать значения поля sh.Cells("Prop.Bagage") = 88 |
Автор: | powercat [ 18 июл 2016, 16:47 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
Благодарю. Буду поизучать. А как это вообще сделано, т.е. с помощью чего? |
Автор: | Surrogate [ 18 июл 2016, 17:33 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): т.е. с помощью чего? никакой магии, чисто работа ручками!пошагово: 1. нарисовал большой квадрат 2. добавлены 6 маленьких (3 ряда по 2 столбца) 3. в квадратиках слева написал названия полей (Ребенок/Взрослый/Багаж) 4. сгруппировал всё это 5. добавил соответствующие ShapeData (Ребенок/Взрослый/Багаж - Child/Adult/Bagage) полученному групповому шейпу 6. вошел внутрь группы и в квадратики справа вставил соответствующие значения полей. нажав Ctrl+F9 Ребенок => Sheet.<ID группового шейпа>!Prop.Child ------------------------------------------ теперь значения в квадратиках справа будут соответствовать введенным свойствам группового шейпа |
Автор: | powercat [ 18 июл 2016, 18:33 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
Surrogate писал(а): powercat писал(а): т.е. с помощью чего? никакой магии, чисто работа ручками!пошагово: 1. нарисовал большой квадрат 2. добавлены 6 маленьких (3 ряда по 2 столбца) 3. в квадратиках слева написал названия полей (Ребенок/Взрослый/Багаж) 4. сгруппировал всё это 5. добавил соответствующие ShapeData (Ребенок/Взрослый/Багаж - Child/Adult/Bagage) полученному групповому шейпу 6. вошел внутрь группы и в квадратики справа вставил соответствующие значения полей. нажав Ctrl+F9 Ребенок => Sheet.<ID группового шейпа>!Prop.Child ------------------------------------------ теперь значения в квадратиках справа будут соответствовать введенным свойствам группового шейпа А пункт 6 - что-то не понял что там за формула (( Остальное пока получается, большушее мерси! |
Автор: | Surrogate [ 18 июл 2016, 18:39 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): А пункт 6 - что-то не понял что там за формула (( смотришь ID группового шейпа - например 5 как на скринеи пишешь соответственно Ребенок => Sheet.5!Prop.Child
|
Автор: | powercat [ 18 июл 2016, 19:00 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
Хм...у меня где имя поля ничего не появляется |
Автор: | Surrogate [ 18 июл 2016, 19:03 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): у меня где имя поля ничего не появляется а кнопку OK внизу окошка нажимал ? ты кстати ID шейпа правильный написал или как у меня в примере взял ?
|
Автор: | powercat [ 18 июл 2016, 19:07 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
А, понял, оно после появляется. Да, правильно, у меня тоже 5... Так...а как (мое любимое выражение) это все в шаблоны сунуть? И еще...ты по учебнику Туманова это все выяснил или тыком (хотя тык на таком уровне вроде не должен работать уже)? |
Автор: | Surrogate [ 18 июл 2016, 19:22 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): а как (мое любимое выражение) это все в шаблоны сунуть? взять и перетащить или в Document Stencil или внешний vss-файлpowercat писал(а): ты по учебнику Туманова это все выяснил или тыком я уж не помню. возможно второй вариант. книжку я увидел примерно в 2008 году. а подобные вещи стал делать в 2004 году. изредка поглядывая на prodigitall.narod.ru [сайт функционирует, но на нем завелись не хорошие скрипты - копия сайта] от Digitall™ (доступ к инету тогда был очень редко) и форум Туманова который был в тот момент
|
Автор: | powercat [ 18 июл 2016, 19:25 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
Ага...а даблклик как организовать? Да, если получится все сделать как я хочу, то работа у меня примерно в 10000 раз ускорится... В качестве платы могу поделиться программой англорусских карточек (недавно написал) ))) |
Автор: | Surrogate [ 18 июл 2016, 19:36 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
powercat писал(а): а даблклик как организовать? Surrogate в сообщении #7347 писал(а): добавь в ячейку EventDblClick формулу DOCMD(1312) - будет вызываться форма для ввода. powercat писал(а): В качестве платы ???
|
Автор: | powercat [ 18 июл 2016, 20:13 ] |
Заголовок сообщения: | Re: Шейпы с полями данных |
ну...не люблю быть обязанным )) |
Страница 1 из 4 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |