Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   мистика при добавлении картинки в GRID (http://www.flasher.ru/forum/showthread.php?t=136274)

nocoments 13.02.2010 07:03

мистика при добавлении картинки в GRID
 
Код AS3:

var grid:Grid = new Grid()
var gridItem:GridItem = new GridItem()
var gridRow:GridRow = new GridRow()
 
var id:Object = gridItem;
 
gridItem.addChild(image);
gridRow.addChild(gridItem)
grid.addChild(gridRow)

картинка отображается так нормально

но когда добавляю в этот грид другую картинку

Код AS3:

var image:Image=new Image()
image.source = //картинка
id.addChild(image)


Нечего не происходит...


как мне это исправить?

самое интересно что если пишу

Код AS3:

id.getChildAt(0).source = //картинка

то так меняет... но мне нада первый вариант что бы работал

chabapok 13.02.2010 14:01

А что это за классы такие Grid, GridItem, GridRow... Вы полностью уверены, что у вас не Flex? Определенно, вы ошиблись веткой.

попробуйте vbox или hbox добавить, а уже в него добавлять свои картинки

expl 13.02.2010 20:46

Цитата:

Код AS3:

var gridItem:GridItem = new GridItem()
...
var id:Object = gridItem;


Какая цель этого чудесного переприсвоения?
Цитата:

Нечего не происходит...
По логике, вы добавляете в тот же GridItem еще один объект - он должен появиться справа от предыдущего.
Потому как GridItem наследник HBox (В сетке строки, в строках итемы, а итемы еще и являются горизонтальными контейнерами, так вот весело)

Почему ничего не происходит и что вы ожидали, чтобы произошло - НЕ понятно.

Кусок по-больше кода, чтоли, выложите. И напишите что хотели чтобы произошло

P.S. Похоже, действительно, тему надо было во Flex-ветке было заводить

Цитата:

то так меняет...
А
Ну если заменить надо, то сначала удаляем старое:
А потом добавляем новое.
Код AS3:

if (gridItem.numChiltern > 0)
{
    gridItem.removeChildAt(0);
}
gridItem.addChild(image2);


nocoments 13.02.2010 23:23

Какая цель этого чудесного переприсвоения?
Цитата:

двумерный масив просто Items[i][j] ячеек.

просто чере обьект грида к ним нельзя обращатся.


Код AS3:

if (gridItem.numChiltern > 0)
{
    gridItem.removeChildAt(0);
}
gridItem.addChild(image2);


кстати да у меня был там пустой имейд..
этот код то что нада пасиба ...

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

спс за помощь


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

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