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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.05.2006, 15:06
BorisL вне форума Посмотреть профиль Отправить личное сообщение для BorisL Найти все сообщения от BorisL
  № 1  
Ответить с цитированием
BorisL

Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
По умолчанию [as1] Actionscript1&ComboBox&Flash8

Здравствуйте всем!
Снова проблема с actionscrip1.0 в восьмерке.
Использую компонент ComboBox. Родной "Восьмерочный" CB при actionscript1.0 не работает, поэтому ComboBox взял из Flash MX.
В таком случае сам компонент работает, данные в него грузятся, но почему-то не получается контролировать события на компоненте, то есть на такой код (из хелпа):
Код:
myObject = new Object();
myObject.myHandler = function(component){
            trace(toyList.getSelectedItem().label); 
}
toyList.setChangeHandler("myHandler", myObject);
просто никакой реакции. В MX такой код отрабатывает.
Подскажите чего я недопонимаю

Старый 14.05.2006, 16:21
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 2  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
я не работал с компонентами MX но мне кажеться у тебя проблема с областью видимости.

попробуй дать абсолютную ссылку к toyList

PS на AS1 можно писать и при настройках AS2
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 14.05.2006, 16:52
BorisL вне форума Посмотреть профиль Отправить личное сообщение для BorisL Найти все сообщения от BorisL
  № 3  
Ответить с цитированием
BorisL

Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
Цитата:
Сообщение от Nirth
я не работал с компонентами MX но мне кажеться у тебя проблема с областью видимости.

попробуй дать абсолютную ссылку к toyList
Спасибо, попробую.

Цитата:
Сообщение от Nirth
PS на AS1 можно писать и при настройках AS2
Да, я знаю, но проект изначально делался не мной, я его дорабатываю. При установке настроек AS2 появляется куча глюков, которые проблемно править, исходник ужасный

Старый 14.05.2006, 16:56
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 4  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
а можешь дать цитату референса для setChangeHandler ?
а то в нете уже нету хелпа для MX .
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 14.05.2006, 17:02
BorisL вне форума Посмотреть профиль Отправить личное сообщение для BorisL Найти все сообщения от BorisL
  № 5  
Ответить с цитированием
BorisL

Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
Цитата:
Сообщение от Nirth
а можешь дать цитату референса для setChangeHandler ?
а то в нете уже нету хелпа для MX .
Конечно:

Availability

Flash Player 6.

Usage

myComboBox.setChangeHandler(functionName, [location])

Parameters

functionName A string specifying the name of the handler function to execute when the selection in the combo box changes. If the location parameter is not specified, this function must be in the same Timeline as the component instance.

location A path reference to a data object, movie clip, or Timeline that contains the specified function. This parameter is optional and defaults to the parent Timeline of the component.

Returns

Nothing.

Description

Method; specifies a change handler to call when the selection in the combo box changes. You can specify the same change handler function for more than one component; the function always accepts the instance of the component that has changed as a parameter. Calling this method overrides the Change Handler parameter value specified in authoring.

For more information, see Using Components chapter of Using Flash.

Example

The following code specifies myHandler as the function called when the value of toyList changes. Because the location parameter is not specified, myHandler must be in the same Timeline as the component instance.

The component parameter in myHandler is automatically filled in with the instance of a component (the component that has changed as the result of user input and that specifies myHandler as its change handler). The actions defined in myHandler specify that when the user selects an item in the list, the label of the item is written to the Output window.

toyList.setChangeHandler("myHandler");
function myHandler(component){
trace(toyList.getSelectedItem().label);
}

If in the preceding example myHandler is a function located in the great-grandparent Timeline of the component's Timeline, the first line of code would be as follows:

toyList.setChangeHandler("myHandler", _parent._parent._parent);

The following code creates the function myHandler in an instance of myObject (which is of class Object), and then specifies myHandler as the function for toyList.

myObject = new Object();
myObject.myHandler = function(component){
trace(toyList.getSelectedItem().label);
}
toyList.setChangeHandler("myHandler", myObject);

Старый 14.05.2006, 17:08
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 6  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
попробуй так
Код:
listener = new Object();
listener.onChange = function(component){
trace(component.getSelectedItem().label);
}
toyList.setChangeHandler("onChange", listener);
я назваие обработчика и листенера изменил, все эти myObject и тд глаза раздражают лично мне
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 14.05.2006, 17:22
BorisL вне форума Посмотреть профиль Отправить личное сообщение для BorisL Найти все сообщения от BorisL
  № 7  
Ответить с цитированием
BorisL

Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
Цитата:
Сообщение от Nirth
попробуй так
Не получилось, то есть в MX работает, в восьмерке не реагирует...
Может старые компоненты вообще в восьмерке не работают? Но ведь данные из массива в него запихать получилось...

Старый 14.05.2006, 17:32
aksios вне форума Посмотреть профиль Отправить личное сообщение для aksios Найти все сообщения от aksios
  № 8  
Ответить с цитированием
aksios
loading 50%
 
Аватар для aksios

Регистрация: Jun 2005
Адрес: I am where I should be
Сообщений: 3,567
Отправить сообщение для aksios с помощью ICQ
Цитата:
Сообщение от BorisL
Не получилось, то есть в MX работает, в восьмерке не реагирует...
Может старые компоненты вообще в восьмерке не работают? Но ведь данные из массива в него запихать получилось...
А енти компоненты написаны под 6 плеер - компелить надо как 6 и лучше в MX. Ваще проще взять алтернативный ComboBox - их довольно много, но там можно будет код руками поправить и под 8 если што.

Старый 14.05.2006, 17:38
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 9  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
лично мне больше всего нравиться v2 комбобокс, из за возможности менять cellRenderer
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 14.05.2006, 17:40
BorisL вне форума Посмотреть профиль Отправить личное сообщение для BorisL Найти все сообщения от BorisL
  № 10  
Ответить с цитированием
BorisL

Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
Цитата:
Сообщение от Nirth
лично мне больше всего нравиться v2 комбобокс, из за возможности менять cellRenderer
Хорошо, попробую. Подскажите где их берут Я редко компонентами пользуюсь, особенно чужими.

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

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

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


 


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


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