Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Глубина компонента? (http://www.flasher.ru/forum/showthread.php?t=87053)

eXplozive 27.10.2006 18:10

Глубина компонента?
 
Сделал приложение на флексе ... Допустим есть главный файл в который подгружаются 4-и компонента. Нужно чтобы при нажатии на кнопке которая находится в самом компоненте он позиционировался над ними ... в АС2 это делалось через getNextHighestDepth() Method и swapDepths() Method...

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

MyXus 27.10.2006 18:21

это вот эта ссылочка? http://livedocs.macromedia.com/flex/...migration.html
тогда
Цитата:

In ActionScript 3.0, you can achieve similar functionality by using the methods of the DisplayObjectContainer class, such as the addChildAt(), setChildIndex(), swapChildren(), and swapChildrenAt() methods.

eXplozive 27.10.2006 18:26

немного переопределю вопрос...

Вот допустим я разобрался как их изменять ...

Код:

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="600" height="400" layout="absolute">

<mx:Script>
        <![CDATA[

       
        public function setdepth(objects:DisplayObject):void{
    var index:int = this.getChildIndex(objects);
    if (index != 3)
    {
        this.setChildIndex(objects, 3);
    }
}
        ]]>
</mx:Script>

<mx:Panel click="setdepth(panel_1)" x="60" y="25" width="250" height="200" layout="absolute" id="panel_1" />
<mx:Panel click="setdepth(panel_2)" x="210" y="106" width="250" height="200" layout="absolute" id="panel_2" />
<mx:Panel click="setdepth(panel_3)" x="250" y="150" width="250" height="200" layout="absolute" id="panel_3" />

</mx:Application>

но в моем случае мне нужно вызвать это действие из компонента...

etc 27.10.2006 18:28

addChild добавляет элемент самым верхним.

Ммм, я так и не понял, что ты хочешь сделать…

eXplozive 27.10.2006 18:39

Попытаюсь обьяснить. Вобщем есть приложение в котором есть 4-и компонента:

Код:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" ayout="absolute" xmlns:ns1="components.*" >

        <ns1:New_feedback2  />
        <ns1:New_smi  />
        <ns1:New_contact  />
        <ns1:blog />
</mx:Application>

каждый из этих компонентов представляет из себя такое себе окно с данными... Я хочу чтобы при нажатии на кнопку которая находится в самом компоненте он всплывал над всеми остальными.

eXplozive 27.10.2006 19:27

Хорошо принцип как это будет происходить я уже придумал ... Только вот вопросик, а как мне вызвать из компонента функцию написанную в основном клипе... ?

etc 27.10.2006 19:49

Послать событие, кастомное.

Barb 27.10.2006 19:51

Например, путем рассылки компонентом события и написания обработчика этого события в основном клипе.

Или внутри компонента пользоваться outerDocument, который и есть ссылка на внешний документ.

eXplozive 27.10.2006 20:11

Я еще не очень в этом силен ... хоть небольшой примерчик можно ?

etc 27.10.2006 20:18

http://livedocs.macromedia.com/flex/.../00001640.html


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

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