![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2006
Адрес: Kemerovo, Sibiria, Russia
Сообщений: 8
|
Категорически приведствую спецов флеша
![]() Возник трабл, объяснения которому я пока найти не могу. Может у кого-то было подобное, прошу подсказать, как его решить. А дело в следующем. Я написал и сопровождаю GUI приложение. написано оно на AS 2.0 и компилю я его на Flash 7.2 Professional. Приложение содержит множество графических элементов, которые загружаются в память при инициализации приложения и потом в нужный момент достаются и помещаются на экране на нужном слое. Вид GUI можно менять при помощи конфигурационного XML файла. До этого момента я обходился только средсвами AS ничего не помещая в библиотеку. Кнопки и текстовые поля. А тут мне понадобился ComboBox. Сделал скин для стандартного и проверил его работоспособность в тестовом приложении. Все OK. Добавил его в билиотеку своего основного приложения - основное приложение начало необъяснимо глючить. Кнопки не нажимаются, менюшки отрисовываются криво. Ошибок компилятор ни каких не выдает, трасировка тоже показывает, что все переменные, ответственные за прорисовку, передаются без ошибок. Причем выявил, что подобное поведение появляется при добавлении любого компонента в библиотеку. Спецы, подскажите с чем это может быть связано? Где искать нестыковку?
__________________
< - just fly for fun - > |
|
|||||
|
Регистрация: Mar 2006
Адрес: Kemerovo, Sibiria, Russia
Сообщений: 8
|
Цитата:
Хотябы приблизительно подскажите где можно поискать - я выложу эти части.
__________________
< - just fly for fun - > |
|
|||||
|
Регистрация: Mar 2006
Адрес: Kemerovo, Sibiria, Russia
Сообщений: 8
|
Сейчас сделал отдельную SWF-ку с ComboBox и загрузил её в основное приложение - тот же эффект. Глючит.
Навсякий случай размещу код своего СomboBox , хотя такой глюк происходит, при использовании ЛЮБОГО компонента из стандартной бибилиотеки. import mx.controls.ComboBox;
mx.controls.ComboBox.prototype.downArrowUpName = "ComboDownArrowOver";
mx.controls.ComboBox.prototype.downArrowDownName = "ComboDownArrowDown";
mx.controls.ComboBox.prototype.downArrowOverName = "ComboDownArrowOver";
mx.controls.ComboBox.prototype.downArrowDisabledName = "ComboDownArrowDisabled";
this.createClassObject(mx.controls.ComboBox, "my_cb", 0, {label:"Check this", _x:400, _y:400, _width:400, _height:50, _xscale:100, _yscale:100});
my_cb.setStyle("color", 0xFFFFFF);
my_cb.setStyle("backgroundColor", 0x123883);
my_cb.setStyle("themeColor", "haloGreen");
my_cb.setStyle("fontSize", 20);
//
var datarray:Array = new Array();
var temparray:Array = new Array();
for (j = 0; j < 1000; j++) {
datarray.push("DEC №" + j);
}
//
for (i = 0; i < datarray.length; i++) {
my_cb.addItem(datarray[i], i);
}
//
my_cb.rowCount = 10;
//var ix = my_cb.selectedIndex;
my_cb.editable = true; // clears the text field
//my_cb.selectedIndex = ix
//my_cb.open()
listenerObject = new Object();
listenerObject.change = function(eventObject) {
var temptext:String
trace(my_cb.text);
temptext = my_cb.textField.text;
my_cb.close();
my_cb.removeAll();
for (i = 0; i < datarray.length; i++) {
trace(datarray[i].substr(0, temptext.length));
if (datarray[i].substr(0, temptext.length) == temptext) {
my_cb.addItem(datarray[i], i);
}
}
trace(my_cb.text);
my_cb.open();
my_cb.textField.text.setFocus();
my_cb.textField.text = temptext;
}
my_cb.addEventListener("change", listenerObject)
import mx.transitions.Tween;
import mx.transitions.easing.*;
import mx.controls.*;
import TInterface;
import TMenu;
import TButton;
import TVendor;
import TVendorMask;
import TKey;
import TContentFile;
import TJavaList;
import TModel;
import TTypes;
import TCellular;
import TContent;
import TContentElement;
import TPayment;
import TTransaction;
import TSocketStatus;
Stage.scaleMode="exactFit";
fscommand("fullscreen", "true");
stop();
Mouse.hide();
__________________
< - just fly for fun - > |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Вся эта информация не поможет решить проблему в таком проекте, потому как вам лучше знать, что там происходит внутри, чем нам.
Лучше соберите отдельный пример, в котором наблюдается баг, если это возможно. Если нет, то значит проблема в ваших классах исключительно. |
|
|||||
|
Регистрация: Mar 2006
Адрес: Kemerovo, Sibiria, Russia
Сообщений: 8
|
Цитата:
![]()
__________________
< - just fly for fun - > |
|
|||||
|
Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
|
Мне кажется проще написать свой комбобокс -))
это точно намного быстрее чем разбирать такой проект да и удобнее я, например, юзаю только свои компоненты. всегда можно дописать если чо. |
|
|||||
|
Регистрация: Sep 2006
Адрес: Zaporozhye, Ukraine
Сообщений: 141
|
>Мне кажется проще написать свой комбобокс
это если один работаешь над проектом, а если работа коллективная, да этот комбобокс написан не тобой и заточен под какие то свои задачи, половины стандартных методов не имеет и аналогов к ним тоже, то что есть работает через ж, а дописать/переписать нельзя, потому что он уже скомпилирован в родительском клипе который не является твоей частью, да и по условиям задачи нельзя, а автор морозится и делает вид что письма не доходят... Такой я вам скажу геморрой |
|
|||||
|
Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
|
комбобокс не такой код чтобы потеряв контакт с одним флешером его нельзя было бы передать другому. Его писать то час от силы.
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Это будет хреновенький комбобокс тогда
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 04:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|