Обращение к объектам, лежащим на мастер-странице
|
|
toizy | Дата: Пятница, 06 Апреля 2007, 09:23 | Сообщение # 1 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| Чтобы обратиться к объекту на Мастер-странице, нужно применять такой синтаксис, например: Code | RunScript("Master Page::Script") ReplaceImage("Master Page::Image","<SrcDir>\...") Hide("Master Layer::BitmapBTN") Show("Master Layer::BitmapBTN1") | и так далее. А в случае обращения к объектам на верхней странице вместо Master Page нужно писать Master Layer. Эти указания нужно давать даже тогда, когда сам объект, из которого происходит обращение к другому объекту(например кнопка), тоже лежит на мастер-странице.
Жизнь оказалась не такой уж и забавной, как поначалу...
|
|
| |
sloNIK | Дата: Среда, 11 Июля 2007, 03:09 | Сообщение # 2 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| Quote (toizy) Чтобы обратиться к объекту на Мастер-странице, А если нужно передвинуть например сгрупированные объекты,тогда как к ним обращаться? Например команда Move to() передвигает группу на любой странице(всмысле если команда запускается на той-же странице,где и группа),а вот на Master Page нет ,как быть?
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
|
|
| |
as-master | Дата: Среда, 11 Июля 2007, 08:48 | Сообщение # 3 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Quote (sloNIK) а вот на Master Page нет ,как быть? Так toizy ведь уже написал, вот: Quote (toizy) Эти указания нужно давать даже тогда, когда сам объект, из которого происходит обращение к другому объекту( например кнопка), тоже лежит на мастер-странице. То есть пишешь так: MoveTo("Master Page::Group","X,Y")
Да пребудет с вами ММВ!
|
|
| |
sloNIK | Дата: Среда, 11 Июля 2007, 13:34 | Сообщение # 4 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| не кнопка лежит на любой странице но не на мастер.И при нажатии запускаается скрипт,а вот в нём нужно заставить двигаься группу.Quote (as-master) MoveTo("Master Page::Group","X,Y") А вот так не работает. Можно двигать только битмапы,картинки,ну и одиночные объекты.А группу ,почему-то нет.
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
Сообщение отредактировал sloNIK - Среда, 11 Июля 2007, 13:38 |
|
| |
as-master | Дата: Среда, 11 Июля 2007, 13:55 | Сообщение # 5 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Ах да, я забыл про одну особенность слоёв Master Page и Master Layer. На этих слоях не выполняются всякие анимационные команды, в том числе и плавное движение объекта, задаваемое командой MoveTo(). Поэтому на этих слоях ты можешь применить лишь команду: MoveObject("Master Page::Group","230,230") MoveObject("Master Layer::Group","230,230") которая перемещает объекты мгновенно. И кстати. Также на этих слоях не будет работать AniGif.
Да пребудет с вами ММВ!
|
|
| |
sloNIK | Дата: Среда, 11 Июля 2007, 17:08 | Сообщение # 6 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| Это совсем неправда,ибо как я уже сказал раньше битмапы и вообще какие-то нибыло объекты (не сгрупированные) можно двигать этой командой Move to() .Проверенно. Так что проблемка видно не в этом.
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
|
|
| |
as-master | Дата: Среда, 11 Июля 2007, 18:39 | Сообщение # 7 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Чёрт возьми, действительно! Только группа не двигается. а всё остальное - ОК. Вот те раз....... Кстати, насчет AniGif всё остается в силе - на этих уровнях он не работает.
Да пребудет с вами ММВ!
|
|
| |
Rush | Дата: Среда, 11 Июля 2007, 20:35 | Сообщение # 8 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Да, вроде бы, насколько мне помнится, группы командой Move to нельзя передвигать не только на страницах Master Page и Master Layer, если команда идет с другой страницы, а и вообще на любой. Так что и команда MoveTo("Page 1::Group","x,y,n, easyto") не пройдет, если идет с другой страницы... ЗЫ. Может ошибаюсь, пишу по памяти. Сейчас не проверял. Но когда-то с этим точно сталкивался. Правда, не на этой версии ММВ...Добавлено (11 Июля 2007, 20:25) --------------------------------------------- Сейчас проверил - с Master Page и Master Layer можно двигать группы командой MoveTo на других страницах. А вот со второй страницы передвинуть группу на первой странице не вышло. Хотя командой MoveObject передвинулось прекрасно... Добавлено (11 Июля 2007, 20:35) --------------------------------------------- Только теперь посмотрел внимательнее - sloNIK, же уже написал: Quote команда Move to() передвигает группу на любой странице(всмысле если команда запускается на той-же странице,где и группа) Прошу прощения за невнимательность.
|
|
| |
sloNIK | Дата: Четверг, 09 Августа 2007, 03:50 | Сообщение # 9 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| Вопрос к знатокам. Что ещё неработает на master page и Master Layer Просто по ходу возникают неувязочки в проекте.Например на Master Layer почему-то неполучается битмап перевести на передний ,или какой нить другой план.Просто команда нефункционирует.Поэтому и вопрос по существу,что ещё недоступно к использованию на этих уровнях?Может кто сталкивался с какими нибудь заминками.Излагайте подробно.Делитесь опытом.
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
|
|
| |
as-master | Дата: Четверг, 09 Августа 2007, 08:07 | Сообщение # 10 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Как я уже говорил выше (напоминаю еще раз), на мастер-страницах не работает AniGif.
Да пребудет с вами ММВ!
|
|
| |
sloNIK | Дата: Четверг, 23 Августа 2007, 01:10 | Сообщение # 11 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| Вот ещё запара. Картинка(в свойствах которой ,белый фон невидем) лежащая на Master Layer при увеличении размера анулирует невидемость фона.Тоесть проявляет его. Чё делать.
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
|
|
| |
as-master | Дата: Четверг, 23 Августа 2007, 09:03 | Сообщение # 12 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Прикрепи конкретный небольшой пример, чтобы посмотреть на это.
Да пребудет с вами ММВ!
|
|
| |
sloNIK | Дата: Пятница, 24 Августа 2007, 03:41 | Сообщение # 13 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| Проблемка в том ,чот все картинки внешнии, а даже если их внедрить в проект,то весить будет кучу.Хотя можно только каркас передать ,а там каждый вставит какую-нить картинку.Ну да ладно.Всё равно вам качать прийдёться.Ты-ж меня как-то раз напугал своим модемным интернетом.Нафиг я вам буду трафик жечь.Или вы миллионеры?Хотя если ты настаиваешь ,то могу присылать.Мне-то что. Блин у вас волшебный форум.Вот 15 мин. пытаюсь сформулировать вопрос и тут бац,прозрел нашол ошибку в коде скрипта.Да!!!!!!!!! Замечательный форум.
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
|
|
| |
as-master | Дата: Среда, 05 Сентября 2007, 19:43 | Сообщение # 14 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Гы-ыыыы
Да пребудет с вами ММВ!
|
|
| |
sloNIK | Дата: Среда, 17 Октября 2007, 02:38 | Сообщение # 15 |
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
| Quote (as-master) И кстати. Также на этих слоях не будет работать AniGif. Quote (as-master) Кстати, насчет AniGif всё остается в силе - на этих уровнях он не работает. Если кому интересно AniGif таки работает на этих слоях.Единственное что надо сделать ,так внедрить желаемый Gif на любой страничке и затем скопировать его на Master Page или Master Layer. У меня всё работает. Да но надо следить за номерами таймеров Ибо будет глючить с одинаковым номером.
Самое главное,это всегда помнить о самом главном! "Мы здесь не для того собрались, чтобы учить другие программы." Автор: as-master
|
|
| |
humanoid | Дата: Среда, 17 Октября 2007, 07:52 | Сообщение # 16 |
Гуманоид
Группа: Проверенные
Сообщений: 406
Репутация: 3
Награды: 1
Статус: Offline
| Quote Если кому интересно AniGif таки работает на этих слоях.Единственное что надо сделать ,так внедрить желаемый Gif на любой страничке и затем скопировать его на Master Page или Master Layer. У меня всё работает. Да но надо следить за номерами таймеров Ибо будет глючить с одинаковым номером Иногда работает... некоторые Гифы всеже не анимируются...но если Гиф имеет обычную секвенцию (без вытравления похожих областей), а просто последовательность картинок... то работает... на всякий случай надо дать скриптовую команду на анимацию.... Да... так и делается... сперва усанавливаем на любую страницу...потом копируем... Quote Да но надо следить за номерами таймеров Это не номера таймеров... это номер анимации, который ММВ присваивается Гифу автоматически (хотя было бы логично устанавливать номер последорвательности самому, но этого в ММВ нет)....
Hi, from Moon!
|
|
| |
as-master | Дата: Среда, 17 Октября 2007, 18:33 | Сообщение # 17 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Quote (sloNIK) Единственное что надо сделать ,так внедрить желаемый Gif на любой страничке и затем скопировать его на Master Page Забавно... Я так понимаю, что на странице его можно сдвинуть за пределы окна проекта? А иначе какой смысл... Попробовал так сделать - действительно работает. Спасибо, пригодится.
Да пребудет с вами ММВ!
|
|
| |
Игорь | Дата: Четверг, 25 Октября 2007, 06:54 | Сообщение # 18 |
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
| Так, или я недопонял, или где-то недопрочитал... У меня проблема с выводом сгруппированных примитивов на передний план - не выходят они, приходится писать в скрипте вывод на передний план каждого объекта на передний план, при этом, естественно, соблюдая соответствующий порядок, иначе, например, надпись может оказаться за объектом, хотя должна находится на нем... Так дальше и продолжать, или все-таки есть способ вывода группы на передний план?
Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету... Марк Твен
|
|
| |
as-master | Дата: Четверг, 25 Октября 2007, 17:54 | Сообщение # 19 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Нет способа. Группы в проектах ММВ даже с самом проекте нельзя передвинуть ни наверх, ни вниз. Если отдельные объекты в списке объектов легко перемещать горячими клавишами Shift+PageUp, Shift+PageDown (на самый вверх и на самый низ) и Ctrl+PageUp, Ctrl+PageDown (на уровень вверх и на уровень вниз), то группы так не передвигаются, и я даже предлагал способ, как их перемещать, когда работаешь над проектом. Так что если они и в проекте не передвигаются, то ничего удивительного, что не передвигаются командой в исполняемом приложении.
Да пребудет с вами ММВ!
|
|
| |
Rush | Дата: Суббота, 27 Октября 2007, 04:27 | Сообщение # 20 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (Игорь) приходится писать в скрипте вывод на передний план каждого объекта на передний план, при этом, естественно, соблюдая соответствующий порядок, А если попробовать другими способами решить эти проблемы? Например, сделать BACK объекту, лежащему выше группы. Хотя, конечно, если сверху лежит несколько объектов, то получится шило на мыло...
|
|
| |
as-master | Дата: Суббота, 27 Октября 2007, 12:26 | Сообщение # 21 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Всё-таки я не вижу другого способа, как перемещать все объекты по одному. Тем более что есть команды перемещения не на самый верх, а на один уровень. Нужно просто грамотно организовать проект. А для уменьшения строк кода все объекты в группе назвать одинаковым именем, но с разными числовыми индексами, и использовать такую конструкцию: For i=1 To n object$='object'+CHAR(i) ReorderObject("object$","FORWARD") Next i
Да пребудет с вами ММВ!
|
|
| |
Игорь | Дата: Среда, 31 Октября 2007, 11:16 | Сообщение # 22 |
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
| Quote (as-master) А для уменьшения строк кода все объекты в группе назвать одинаковым именем, но с разными числовыми индексами, и использовать такую конструкцию: Хм... а неплохая мысль... ГДЕ ТЫ РАНЬШЕ БЫЛ, Я УЖЕ С ГРУППАМИ РАБОТУ ЗАКОНЧИЛ!!!! ПАРИЛСЯ, КАК... КАК... КАК ЧЕРТ ЗНАЕТ КТО!!! А-А-А-А!!!!
Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету... Марк Твен
|
|
| |
as-master | Дата: Среда, 31 Октября 2007, 12:11 | Сообщение # 23 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| А ты вообще про циклы никогда не забывай, всегда, когда имеешь дело с массовым употреблением какой-либо команды. Они хоть и не ускоряют в данном случае работу скрипта, но зато значительно сокращают длину кода, а значит, и твою работу. Добавлено (31 Октября 2007, 12:11) --------------------------------------------- И, кстати, ничего не мешает тебе сделать новую версию, где организовать всё более грамотно. Впрочем, мешать кое-что может - лень :)
Да пребудет с вами ММВ!
|
|
| |
Игорь | Дата: Четверг, 01 Ноября 2007, 07:08 | Сообщение # 24 |
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
| Quote (as-master) И, кстати, ничего не мешает тебе сделать новую версию, где организовать всё более грамотно. Впрочем, мешать кое-что может - лень Ага... шутник... Там у меня энное количество скриптов и в каждом скрипте до пятнадцати обращений к разным объектам разных групп (много окон - видеоплейер, фотогалерея, списки лабоарторных, еще чего-то, не помню) Ну и если я переименую объекты группы, например, для видеоплейера, то, соответственно, надо шарить по скриптам в поисках этого объекта и менят его название и там. В принципе, не так много, но времени на это уйдет порядочно. А время, как ты знаешь, в образовании работает против нас.
Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету... Марк Твен
|
|
| |
as-master | Дата: Четверг, 01 Ноября 2007, 13:06 | Сообщение # 25 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Иногда я, скрепя сердце, начинаю переделывать проект С НУЛЯ. Просто потому, что понимаю, что это будет более грамотно, а в конечном счете будет и для меня более удобно, для дальнейшей работы со своим проектом (обновления и т.д.)
Да пребудет с вами ММВ!
|
|
| |
Игорь | Дата: Пятница, 02 Ноября 2007, 07:39 | Сообщение # 26 |
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
| Убедил... Тем более что у меня в скриптах довольно много мусора и их все равно нужно вычищать...
Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету... Марк Твен
|
|
| |
humanoid | Дата: Пятница, 02 Ноября 2007, 10:35 | Сообщение # 27 |
Гуманоид
Группа: Проверенные
Сообщений: 406
Репутация: 3
Награды: 1
Статус: Offline
| Quote Иногда я, скрепя сердце, начинаю переделывать проект С НУЛЯ. Это вот и отличает профессионала от любителя...
Hi, from Moon!
|
|
| |