Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.01.2008, 13:59
Loshadka вне форума Посмотреть профиль Посетить домашнюю страницу Loshadka Найти все сообщения от Loshadka
  № 1  
Ответить с цитированием
Loshadka
 
Аватар для Loshadka

Регистрация: Aug 2004
Адрес: *
Сообщений: 10
Отправить сообщение для Loshadka с помощью ICQ
По умолчанию Как содержимое объекта сделать фиксированным, если у самого объекта размеры меняются?

Немного поясню.
1. Есть одна большая флешка
width: 100%; height: 100%
2. В ней есть объект, у которого, скажем
_width = Stage.width / 2;
_height = Stage.height;
3. В этом объекте есть другие объекты.

И вопрос, как сделать так, чтобы внутренние объекты не растягивались при изменении размеров их родителя?

Сейчас сам склоняюсь к решению поместить все объекты в _root, и тогда без проблем все это можно будет реализовать, но проект достаточно большой и хотелось бы сохранить четкую и логичную структуру во всем.

з.ы. быстренько накидал пример для иллюстрации: http://ejika.net/test.html

Код примера:
Код:
_root.onLoad = function() {
	var stageListener:Object = new Object();
	stageListener.onResize = resizing();
	Stage.scaleMode = "noScale";
	Stage.addListener(stageListener);
}

_root.onEnterFrame = function() {
	_root.sText.text = Stage.width + ", " + Stage.height;
	_root.sText._x = Stage.width - _root.sText._width;
	_root.sText._y = Stage.height - _root.sText._height;
	
	_root.oIcons._width  = Stage.width / 2;
	_root.oIcons._height = Stage.height;
}
__________________
http://erinphoto.ru/

Старый 18.01.2008, 17:04
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Считать _xscale и _yscale родителя и скорректировать по ним _xscale и _yscale потомка.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 21.01.2008, 03:39
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 3  
Ответить с цитированием
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
Цитата:
Сообщение от iNils
Считать _xscale и _yscale родителя и скорректировать по ним _xscale и _yscale потомка.
ну это уж очень деревяный способ, учитывая то что родитель как раз состоит и потомков.

Старый 21.01.2008, 03:54
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Сообщение от INK•
ну это уж очень деревяный способ, учитывая то что родитель как раз состоит и потомков.
Вот именно потому, что родитель и состоит из потомков, надо использовать _xscale и _yscale.
Я так понимаю, что кроме бесполезной критики предложить больше нечего?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 21.01.2008, 04:07
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 5  
Ответить с цитированием
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
Вы, Дедушка Мороз не нервничайте пожалуйста.
А предложить всегда есть чего.

Я бы вот что сделал.
Выделил бы в том что вы называете "родитель" два слоя.
первый слой это контейнер в который загнал бы эти ваши квадраты.
второй слой маска поверх контейнера, шириной и высотой которой уже бы и манипулировал относительно размера видемой области.
Тоесть. То что мы видим всегда будет заданого размера (как видно из вашего примера 50% ширины экрана) а сами квадратики масштабироватся при этом не будут.

Старый 21.01.2008, 04:13
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Бесполезная конструкция, учитывая, что координаты объектов потомков при масшабировании меняются.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 21.01.2008, 04:27
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 7  
Ответить с цитированием
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
насколько я понял Loshadka хочет добится такого эфекта
http://ink.envisionext.com/tmp/stage.html

Старый 21.01.2008, 12:07
Loshadka вне форума Посмотреть профиль Посетить домашнюю страницу Loshadka Найти все сообщения от Loshadka
  № 8  
Ответить с цитированием
Loshadka
 
Аватар для Loshadka

Регистрация: Aug 2004
Адрес: *
Сообщений: 10
Отправить сообщение для Loshadka с помощью ICQ
Спасибо всем за помощь. Проблема решена. Она была в моей математике, т.к. я нормально не мог написать уравнение вычисляющее процентное отношение потомка.
Выложил рабочий пример: http://ejika.net/test.html

Код:
_root.onEnterFrame = function() {

    _root.oIcons._width  = Stage.width;
    _root.oIcons.oObj._xscale =  100 / _root.oIcons._xscale * 100;
}
__________________
http://erinphoto.ru/

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:03.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:03.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.