Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Форум MMB » Всё о программе Multimedia Builder » ГОТОВЫЕ ОТВЕТЫ ПО MMB » Обращение к объектам, лежащим на мастер-странице
Обращение к объектам, лежащим на мастер-странице
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 нет ,как быть? dry


Самое главное,это всегда помнить о самом главном!
"Мы здесь не для того собрались, чтобы учить другие программы."
Автор: 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() передвигает группу на любой странице(всмысле если команда запускается на той-же странице,где и группа)
Прошу прощения за невнимательность. smile
 
sloNIKДата: Четверг, 09 Августа 2007, 03:50 | Сообщение # 9
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
Вопрос к знатокам. dry
Что ещё неработает на master page и Master Layer
Просто по ходу возникают неувязочки в проекте.Например на Master Layer почему-то неполучается битмап перевести на передний ,или какой нить другой план.Просто команда нефункционирует.Поэтому и вопрос по существу,что ещё недоступно к использованию на этих уровнях?Может кто сталкивался с какими нибудь заминками.Излагайте подробно.Делитесь опытом. happy


Самое главное,это всегда помнить о самом главном!
"Мы здесь не для того собрались, чтобы учить другие программы."
Автор: 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 при увеличении размера анулирует невидемость фона.Тоесть проявляет его. dry
Чё делать.


Самое главное,это всегда помнить о самом главном!
"Мы здесь не для того собрались, чтобы учить другие программы."
Автор: as-master
 
as-masterДата: Четверг, 23 Августа 2007, 09:03 | Сообщение # 12
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
Прикрепи конкретный небольшой пример, чтобы посмотреть на это.

Да пребудет с вами ММВ!
 
sloNIKДата: Пятница, 24 Августа 2007, 03:41 | Сообщение # 13
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
Проблемка в том ,чот все картинки внешнии, а даже если их внедрить в проект,то весить будет кучу.Хотя можно только каркас передать ,а там каждый вставит какую-нить картинку.Ну да ладно.Всё равно вам качать прийдёться.Ты-ж меня как-то раз напугал своим модемным интернетом.Нафиг я вам буду трафик жечь.Или вы миллионеры?Хотя если ты настаиваешь ,то могу присылать.Мне-то что. cool

Блин у вас волшебный форум.Вот 15 мин. пытаюсь сформулировать вопрос happy и тут бац,прозрел cool нашол ошибку в коде скрипта.Да!!!!!!!!! Замечательный форум. biggrin


Самое главное,это всегда помнить о самом главном!
"Мы здесь не для того собрались, чтобы учить другие программы."
Автор: as-master
 
as-masterДата: Среда, 05 Сентября 2007, 19:43 | Сообщение # 14
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
Гы-ыыыы smile

Да пребудет с вами ММВ!
 
sloNIKДата: Среда, 17 Октября 2007, 02:38 | Сообщение # 15
Поднаторевший
Группа: Проверенные
Сообщений: 96
Репутация: 0
Награды: 0
Статус: Offline
Quote (as-master)
И кстати. Также на этих слоях не будет работать AniGif.

Quote (as-master)
Кстати, насчет AniGif всё остается в силе - на этих уровнях он не работает.

Если кому интересно biggrin AniGif таки работает на этих слоях.Единственное что надо сделать ,так внедрить желаемый Gif на любой страничке и затем скопировать его на Master Page или Master Layer. У меня всё работает.
Да wacko но надо следить за номерами таймеров
Ибо будет глючить с одинаковым номером.


Самое главное,это всегда помнить о самом главном!
"Мы здесь не для того собрались, чтобы учить другие программы."
Автор: 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
Нет способа. sad

Группы в проектах ММВ даже с самом проекте нельзя передвинуть ни наверх, ни вниз. Если отдельные объекты в списке объектов легко перемещать горячими клавишами Shift+PageUp, Shift+PageDown (на самый вверх и на самый низ) и Ctrl+PageUp, Ctrl+PageDown (на уровень вверх и на уровень вниз), то группы так не передвигаются, и я даже предлагал способ, как их перемещать, когда работаешь над проектом.

Так что если они и в проекте не передвигаются, то ничего удивительного, что не передвигаются командой в исполняемом приложении.


Да пребудет с вами ММВ!
 
RushДата: Суббота, 27 Октября 2007, 04:27 | Сообщение # 20
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
Quote (Игорь)
приходится писать в скрипте вывод на передний план каждого объекта на передний план, при этом, естественно, соблюдая соответствующий порядок,

А если попробовать другими способами решить эти проблемы? Например, сделать BACK объекту, лежащему выше группы. Хотя, конечно, если сверху лежит несколько объектов, то получится шило на мыло... smile
 
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)
А для уменьшения строк кода все объекты в группе назвать одинаковым именем,
но с разными числовыми индексами, и использовать такую конструкцию:

Хм... а неплохая мысль... ГДЕ ТЫ РАНЬШЕ БЫЛ, Я УЖЕ С ГРУППАМИ РАБОТУ ЗАКОНЧИЛ!!!! ПАРИЛСЯ, КАК... КАК... КАК ЧЕРТ ЗНАЕТ КТО!!! А-А-А-А!!!! happy


Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету...
Марк Твен
 
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)
И, кстати, ничего не мешает тебе сделать новую версию,
где организовать всё более грамотно.
Впрочем, мешать кое-что может - лень smile

Ага... шутник... Там у меня энное количество скриптов и в каждом скрипте до пятнадцати обращений к разным объектам разных групп (много окон - видеоплейер, фотогалерея, списки лабоарторных, еще чего-то, не помню) Ну и если я переименую объекты группы, например, для видеоплейера, то, соответственно, надо шарить по скриптам в поисках этого объекта и менят его название и там. В принципе, не так много, но времени на это уйдет порядочно. А время, как ты знаешь, в образовании работает против нас.


Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету...
Марк Твен
 
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!
 
Форум MMB » Всё о программе Multimedia Builder » ГОТОВЫЕ ОТВЕТЫ ПО MMB » Обращение к объектам, лежащим на мастер-странице
  • Страница 1 из 1
  • 1
Поиск: