[Flex 4] Module doesn't unload due to mx.styles.StyleManagerImpl - moduleFactroy?
I have a custom component extending skinnableContainer and has a ButtonBar and Groups in it, which I use in my module.
If I do not: import CustomClass; CustomClass; in my main application, then the module is stuck with mx.styles.StyleManagerImpl - moduleFactroy in the profiler.
Why is that? I though that modules in Flex 4 have their own style manager and I should not have this problem? What I am missing?
And also since I'm building a modular system and someone builds a module swf for it, he will have to include his components along with it, so then I can reference them in my mainApp, so his module doesn't get stuck in memory. Is that the way it's supposed to work or I am doing something work ?
Thanks for the reply Darrell, as you can see I've started looking into the unloading modules and profiling topic, as I progress with my modular application.
So I am kinda new in both, although I've read all articles I could find I have some problems so I've created a very simple application example again, so you could easily look into it and hopefully spread some light in my confusion.
http://filip.nedyalkov.net/moduleImageStuck/ view source is enabled so you can confirm test what I will describe here, use it to view the source, or download to profile the results I post here.
The scenario of the example is: On app creation 2 modules are loaded and created via moduleInfo:
MyModule.mxml
<s:Group><mx:Image id="imageLoader" /></s:Group>
MyModule2.mxml
<s:Group>
<local:HNav /></s:Group>
HNav.mxml - SkinnableContainer
<s:ButtonBar><s:dataProvider><s:ArrayCollection><fx:String>B1</fx:String><fx:String>B2</fx:String></s:ArrayCollection></s:dataProvider></s:ButtonBar>
So with the example provided I've made 3 test cases, where I get different results.
1) The first one is as the example is currently setup to run, which means:
- these 2 imports are NOT included in the main app
//import mx.controls.Image; Image;
//import HNav; HNav;
- both modules are loaded via moduleInfo "load()" only method (moduleFactory is not passed).
Darrell, here what I wonder is: "In Flex 4 a module will not be pinned in memory by StyleManager unless you explicitly set styles from the module into the top-level StyleManager". With this said I should be not having my modules pinned into memory with this setup, right? Or I am missing something? Here is the profiler result for both modules - both FlexModuleFactories remain:
2) In the second test case I included the imports along with the current setup:
import mx.controls.Image; Image;
import HNav; HNav;
The result here was nice, both FlexModuleFactories were gone in the profiler. But the question remains - why do I have to declare in my main app these classes when in Flex 4 the StyleManager shouldn't pin them like in case 1) in memory.
3) I also post here this test case 3 because I find it as an unexpected behavior or bug maybe with the mx:Image class.
Here we still have the imports but instead of "load()" we pass in the moduleFactory: load(null,null,null,moduleFactory);
The result of this is having MyModule's FlexModuleFactory stuck in memory with reference with the StyleManager and MyModule2 is completely gone, so it's ok.
Here is the profiler result:
So the question here along with the idea it could be a bug, is: Should I pass moduleFactory to modules I plan to unload? I wanted to pass moduleFactory instead of declaring same styles for each module.
Darrell I'm kinda stuck on these questions, cause I've found nothing on this in articles, and I tried really hard to put my very complexed project into this simple examples, so I get the methodology and logic of how a dynamic system which constantly loads and unloads modules should be structured.
I really hope you find the time to answer me here till I get this running. I'm sure others will find it useful too. Thanks in advance.
Similar Messages
-
26-suspend2 error: "Some modules failed to unload: nvidia"
I've been trying to install the suspend2 kernel to allow my machine to hibernate, but I can't get it to work from within X (though it seems to work fine in run level 3). When I try, I get:
$ sudo hibernate
Password:
:: Saving ALSA Levels [DONE]
Some modules failed to unload: nvidia
hibernate: Aborting suspend due to errors in ModulesUnloadBlacklist (use --force to override).
:: Restoring ALSA Levels [DONE]
Here is my xorg.conf:
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 1.0 (buildmeister@builder3) Wed Jun 13 18:39:30 PDT 2007
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
RgbPath "/usr/share/X11/rgb"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/100dpi:unscaled"
FontPath "/usr/share/fonts/75dpi:unscaled"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/Type1"
EndSection
Section "Module"
Load "xtrap"
Load "dbe"
Load "record"
Load "extmod"
Load "freetype"
Load "type1"
Load "glx"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
#DisplaySize 340 270 # mm
### Comment all HorizSync and VertRefresh values to use DDC:
Identifier "Monitor0"
VendorName "MAG"
ModelName "LT716s"
HorizSync 31.0 - 81.0
VertRefresh 60.0 - 75.0
Option "DPMS"
EndSection
Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
### [arg]: arg optional
#Option "SWcursor" # [<bool>]
#Option "HWcursor" # [<bool>]
#Option "NoAccel" # [<bool>]
#Option "ShadowFB" # [<bool>]
#Option "UseFBDev" # [<bool>]
#Option "Rotate" # [<str>]
#Option "VideoKey" # <i>
#Option "FlatPanel" # [<bool>]
#Option "FPDither" # [<bool>]
#Option "CrtcNumber" # <i>
#Option "FPScale" # [<bool>]
#Option "FPTweak" # <i>
Option "RenderAccel" "true"
Option "AllowGLXWithComposite" "true"
Option "NvAGP" "1"
#ProcSetting extra_pages_allowance 0
Identifier "Card0"
Driver "nvidia"
#Driver "nvidia-suspend2"
VendorName "nVidia Corporation"
BoardName "GeForce 7300 LE"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
Option "AddARGBGLXVisuals" "true"
Option "DisableGLXRootClipping" "true"
SubSection "Display"
Viewport 0 0
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection
hibernate.conf:
# hibernate.conf is split into separate configuration files.
# Each file is tried in the order below, until an available suspend
# method is found.
# Options specific to a particular suspend method should be placed in the
# appropriate configuration file (suspend2.conf, ususpend.conf, disk.conf
# or ram.conf).
# Options common to all suspend methods should be placed in common.conf.
# See hibernate.conf(5) for help on the configuration items.
TryMethod suspend2.conf
#TryMethod disk.conf
#TryMethod ram.conf
common.conf:
# Configuration options common for suspending to disk or RAM.
# Options are not case sensitive.
# See hibernate.conf(5) for help on the configuration items.
### Some global settings
Verbosity 0
LogFile /var/log/hibernate.log
LogVerbosity 1
# LogTimestamp yes
# AlwaysForce yes
# AlwaysKill yes
# HibernateVT 15
Distribution arch (or debian/fedora/gentoo/mandrake/redhat/slackware/suse)
# XDisplay :0
### Scriptlets
### Scriptlets provide support for doing all sorts of things before and after
### suspending. The defaults settings here should work for most people, but
### you may wish to edit these to taste. Consult "hibernate -h" for help on
### the configuration settings.
### bootsplash
## If you use bootsplash, also enabling SwitchToTextMode is recommended if
## you use X, otherwise you may end up with a garbled X display.
# Bootsplash on
# BootsplashConfig /etc/bootsplash/default/config/bootsplash-1024x768.cfg
### clock
SaveClock restore-only
### devices
# IncompatibleDevices /dev/dsp /dev/video*
### diskcache
# DisableWriteCacheOn /dev/hda
### fbsplash (enable SwitchToTextMode if you use this)
# FBSplash on
# FBSplashTheme suspend2
### filesystems
# Unmount /nfsshare /windows /mnt/sambaserver
# UnmountFSTypes smbfs nfs
# UnmountGraceTime 1
# Mount /windows
### grub
# ChangeGrubMenu yes
# GrubMenuFile /boot/grub/menu.lst
# AlternateGrubMenuFile /boot/grub/menu-suspended.lst
# BackupGrubMenuFile /boot/grub/menu.lst.hibernate.bak
# see http://bugs.debian.org/317479
# RemountXFSBoot yes
### hardware_tweaks
# IbmAcpi yes
# Runi915resolution yes
# FullSpeedCPU yes
### lilo
# EnsureLILOResumes yes
### lock (generally you only want one of the following options)
# LockConsoleAs root
# LockXScreenSaver yes
# LockGnomeScreenSaver yes
# LockKDE yes
# LockXLock yes
# LockXAutoLock yes
### misclaunch
# OnSuspend 20 echo "Good night!"
# OnResume 20 echo "Good morning!"
### modules
# UnloadModules snd_via82cxxx usb-ohci
# UnloadAllModules yes
UnloadBlacklistedModules yes
LoadModules auto
# LoadModulesFromFile /etc/modules
### modules-gentoo
# GentooModulesAutoload yes
### network
# DownInterfaces eth0
# UpInterfaces auto
### pause_audio
# MuteAudio yes
# PauseAudio yes
### pcmcia
# EjectCards yes
### programs
# IncompatiblePrograms xmms
### services
# RestartServices laptop_mode
RestartServices alsa
# StopServices alsasound
# StartServices aumix
### vbetool
# EnableVbetool yes
# RestoreVbeStateFrom /var/lib/vbetool/vbestate
# VbetoolPost yes
# RestoreVCSAData yes
### xhacks
SwitchToTextMode yes
# UseDummyXServer yes
# DummyXServerConfig xorg-dummy.conf
### xstatus
## This can be set to gnome, kde or x:
# XStatus gnome
# XmessageDisable yes
# XSuspendText Preparing to suspend...
# XResumeText Resuming from suspend...
## When using XStatus x, and you have xosd installed:
# XosdSettings --font '-misc-fixed-medium-r-semicondensed--*-120-*-*-c-*-*-*' --colour=Green --shadow 1 --pos bottom --align center --offset 50So does this mean that ususpend with hibernate-script is somehow broken and that pm-utils must be used?
UPDATE: I just tried it. pm-utils suspends without complaint, and was easy to set up. I still have problems
though, and will post them separately, if I don't find a solution on the wiki.
Last edited by adrian.ratnapala (2009-08-01 16:53:06) -
Help- Flex Start Page doesn't open the Start Page
Help -> Flex Start Page doesn't open the Start Page.
I see multiple bug entries regarding this resolved, but no description of what I can do to fix it.
I'm running Flex Builder Professional on Windows XPI've heard this can be caused in IE when the pop-up blocker is enabled. Disable it so pop-ups are allowed, and the Flex Start Page may load.
If this post answers your question or helps, please mark it as such. -
Airport for Windows doesn't start due to missing dnssd.dll?
I've just installed AirPort for Windows v5.4.2 on my Windows XP SP3 laptop, yet it doesn't start due to a supposedly missing dnssd.dll file.
The error message states: "This application has failed to start because dnssd.dll was not found. Re-installing the application may fix this problem" .
Re-installing does not fix this. Any ideas?That's interesting. It's actually a BonJour dll, and it lives at:
C:\WINDOWS\system32\dnssd.dll
I can replicate your error message by dragging the dll out of system32 and on to the desktop prior to trying to launch the Airport utility.
If it has gone walkabout for you in a similar fashion, here's a way of getting it back.
Restart the PC. Now head into your Add or Remove Programs Control Panel. Select BonJour, click "Change" and then click "Repair".
Does the repair install of BonJour go through properly? If so, can you open the Airport utility without the error message? -
Exception when starting flex apache module
Hi all,
I'm trying to install the flex apache module on a server but
I get an exception when I start apache.
This are the info relating to my system:
[root@reilabs-www adobe]# uname -a
Linux server 2.6.20-1.2952.fc6 #1 SMP Wed May 16 17:59:13 EDT
2007 i686 i686 i386 GNU/Linux
[root@server adobe]# java -version
java version "1.6.0_06"
Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
Java HotSpot(TM) Client VM (build 10.0-b22, mixed mode,
sharing)
[root@rserver adobe]# /opt/adobe/flex_sdk_3/bin/mxmlc
-version
Version 3.0.0 build 477
I get this when I start apache with: service httpd start:
[root@server]# Exception in thread "main"
java.lang.StringIndexOutOfBoundsException: String index out of
range: -1
at java.lang.String.substring(Unknown Source)
at flex2.tools.apache.RemoteApplication.initRequest(Unknown
Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native
Method)
at sun.rmi.transport.Transport.serviceCall(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown
Source)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown
Source)
at java.lang.Thread.run(Unknown Source)
at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown
Source)
at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown
Source)
at sun.rmi.server.UnicastRef.invoke(Unknown Source)
at
flex2.tools.apache.RemoteApplication_Stub.initRequest(Unknown
Source)
at flex2.tools.apache.LocalApplication.compile(Unknown
Source)
at flex2.tools.apache.Client.main(Unknown Source)
I followed instruction and I installed the flex_sdk_3 in
/opt/adobe/flex_sdk_3, installed the flex apache module in the same
dir, then I edited the compiler.sh file setting the correct path to
the flex home dir, then I placed in /etc/httpd/conf/htttpd.conf
these lines:
LoadModule flex_module
/opt/adobe/flex_sdk_3/modules/apache/linux/22/mod_flex.so
AddHandler flex .mxml
Can you hint about a possible solution to this problem?
Many thanks in advance, best regards.I am facing the same problem too... Do we have any solution to the problem while apache module for flex falis while it starts with the StringIndexOutofBoundsException ?
-
Flex 4 Modules and Stylesheets
I am having trouble using stylesheets in a module, in particular with class styles (i.e. ".myStyle"). They are not loading at compile time. My module is:
<?xml version="1.0" encoding="utf-8"?>
<mx:Module xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:views="com.fosrias.portal.views.*"
xmlns:maps="com.fosrias.portal.maps.control.*"
layout="absolute">
<fx:Style source="../assets/styles/main.css"/>
<views:PortalUI left="0" top="0" right="0" bottom="0"/>
</mx:Module>
Any my main.css contains
mx|SomeComponent {
etc.
.myStyle {
etc.
The type style mx|Component loads, but the class style .myStyle does not. Should this work, or do I have to compile my styles to a swf and load them a runtime? ThanksSo, the component's (which is a UIComponent subclass in the module) styleManager.ModuleFactory is the top-level application (ii.e. app embedding the module) system manager. Not, the local modul's systemManager.
Chokes, means returns null on the getStyleDeclaration call.
However, per the documentation here :
http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-799a.html
Using styles with modules
When you set styles on modules, the style properties are set on the local StyleManager. Each module has its own instance of the IStyleManager2 class. This means that each module can load its own set of styles, and its styles do not necessarily affect the styles of other modules.
After an application finishes loading a module, the module’s styles are merged with the styles of the application. The module’s StyleManager walks the chain of parent modules and applications, up to the top-level StyleManager, and merges its styles with those set on the StyleManagers above it.
Thus, it seems the styles should merge and thus be accessible by the top-level system manager, no?
That being said, if not, how do you actually locate the the local system manager instance to use it? Or can't you?
Thanks.
Mark -
Lightroom 5: start button in the presentation module doesn't work properly
Hi. I purchased LR 5 last week but the start button in the presentation mudule doesn't work properly. I get a black screen and nothing happens. I have to press the esc button several times to return to LR.Can you help me please
Regards Eugenestart button in the presentation mudule
Can you clarify?
There is no start button nor a presentation module.
Do you mean the Play button in the Slideshow module?
Which operating system? -
PHP_OCI8 modul doesn't work with xampp
Hello guy's
i've installed the newest xampp version 1.6.3a which contains php version 5.2.3.
Now i have to connect with php to an external oracle database.
i deleted the comments before extension=php_oci8 in the php.ini and i'have extracted the oracle instant client basic in the ./xampp/instantclient_10_2.
i'have inserted the oracle instant client path into the windows path variable. i've also created the ORACLE_HOME variable with the same path.
the problem ist that it won't work. i tired it with the new php_oci8.dll from pecl. but here it is the same problem. in phpinfo() it doesn't show the oci8 module.
and in the test file this is the error message appeared "Fatal error: Call to undefined function oci_connect() in C:\Program Files\xampp\htdocs\oracle_test\index.php on line 2"
now i need help. can someone help me?It sounds like you are on the right track. Some Windows users have reported needing a reboot after setting environment variables like PATH. If that doesn't help, try checking what libraries are needed by PHP and make sure they are being found. Last time I did that on Windows I used Dependency Walker.
-- cj
PS With Instant Client there is no need to set ORACLE_HOME -
Function Module - Customer Installment Payment Due
Hello,
I am trying to create a payment due report for our customers. We use installment payment terms for our customers. Therefore, when run at the end of September 2011 this report has to only show the invoice amount, tax and discount that is due as of that date. Is there a function module that I can use to get the split based on these installment terms?
The only other option is to do the calculation manually within the program i.e. read the installment percentage from the table T052S and calculate the values per invoice. However, it seems as if there would be a easier way to do this. Can someone please suggest any function modules that can be used to calculate the net due, discount and tax amounts per installment period?
Thanks,
RugmaniDear Rugmani,
Provide you url which is helpful to you....i think you must have to create a z-report for this purpose.
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/TRZP/TRZP.pdf
regards
Ajit -
Kernel module not properly unloaded at shutdown
Hello everyone,
I guess I have found the solution to my problem described in the following topic: https://bbs.archlinux.org/viewtopic.php?pid=1215504. It's about my headphone output not working when booting from Arch to Windows 7.
When I unload the module manually with:
modprobe -r snd_hda_intel
Sound with Windows 7 works perfectly (without removing the battery from my laptop!).
Now I would like to know, how to properly unload this module before powering off the machine?graysky wrote:Never heard of that since rebooting should clear hardware states, no? In any case, why not run an `rmmod snd_hda_intel` via systemd on shutdown?
Yeah, seems like if you require a hack/workaround for this, it would be easy enough to set up. You could use a systemd.service for this, but I would probably go the even easier route and just drop a one line script in /usr/lib/systemd/system-shutdown. -
Help me,About invoking PopUpManager.addPopUp problem in Flex 4 Module
hello,when I invoke PopUpManager.addPopUp(),have a problem. detail from the fellowing program code;
<?xml version="1.0" encoding="utf-8"?>
<mx:Module xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" width="100%" height="100%"
xmlns:mx="library://ns.adobe.com/flex/mx" creationComplete="initApp()">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.core.FlexBitmap;
import mx.core.FlexGlobals;
import mx.events.CloseEvent;
import mx.events.DataGridEvent;
import mx.events.ListEvent;
import mx.managers.PopUpManager;
import mx.rpc.AsyncToken;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.remoting.RemoteObject;
import org.mydev.fnd.proxy.FndLookupHeadersProxy;
import org.mydev.fnd.proxy.FndLookupLinesProxy;
import org.mydev.fnd.vo.FndLookupHeadersVO;
import org.mydev.fnd.vo.FndLookupLinesVO;
import org.mydev.utils.PublicFunction;
import spark.components.Application;
[Bindable]
private var myac:ArrayCollection=new ArrayCollection();
[Bindable]
private var myacLines:ArrayCollection=new ArrayCollection();
private var headerProxy:FndLookupHeadersProxy=new FndLookupHeadersProxy();
private var linesProxy:FndLookupLinesProxy=new FndLookupLinesProxy();
private var add:FndHeaderDM;
private var lineAdd:FndLineDM;
private function lfRowNum(oItem:Object,iCol:int):String
var iIndex:int = myac.getItemIndex(oItem) + 1;
return String(iIndex);
private function lfRowNumLines(oItem:Object,iCol:int):String
var iIndex:int = myacLines.getItemIndex(oItem) + 1;
return String(iIndex);
private function we_resultHandler(event:ResultEvent):void
myac=event.result as ArrayCollection;
// PopUpManager.removePopUp(wi);
// TODO Auto-generated method stub
private function we_faultHeadler(event:FaultEvent):void{
// var msg:String=event.message.toString();
Alert.show("插入数据失败!");
private function we_resultHandlerLines(event:ResultEvent):void
myacLines=event.result as ArrayCollection;
// PopUpManager.removePopUp(wi);
// TODO Auto-generated method stub
private function we_faultHeadlerLines(event:FaultEvent):void{
// var msg:String=event.message.toString();
Alert.show("插入数据失败!");
public function initApp():void{
dataHeaders.allowMultipleSelection=true;
var token:AsyncToken=headerProxy.getAllHeaders();
PublicFunction.addResponder(token,we_resultHandler,we_faultHeadler);
// dataHeaders.addEventListener(MouseEvent.DOUBLE_CLICK,doubleClick)
// dataHeaders.addEventListener(ListEvent.KEY_DOWN,selectChange);
protected function btnAddHeader_clickHandler(event:MouseEvent):void
// trace("test.............");
add=new FndHeaderDM();
PopUpManager.addPopUp(add,parent,true);
//PopUpManager.addPopUp(add,FlexGlobals.topLevelApplication as DisplayObject,true);
PopUpManager.bringToFront(add);
PopUpManager.centerPopUp(add);
// var myFun:Function=initApp;
var fndLookupHeadersVO:FndLookupHeadersVO=new FndLookupHeadersVO();
add.init(fndLookupHeadersVO,1,myac);
private function headerAlertClickHandler(event:CloseEvent):void {
var myObj:FndLookupHeadersVO=(FndLookupHeadersVO)(dataHeaders.selectedItem);
if (event.detail==Alert.YES){
// Alert.show("你选择了 确定");
myac.removeItemAt(dataHeaders.selectedIndex);
//this.parent.removeChildAt(dataHeaders.selectedIndex);
headerProxy.removeObj(myObj);
// initApp();
//dataHeaders.initialize();
// else if(event.detail==Alert.NO){
// Alert.show("你选择了 否");
// }else{
// Alert.show("你选择了 取消");
protected function btnDelHeader_clickHandler(event:MouseEvent):void
if (dataHeaders.selectedItem!=null){
Alert.show("是否要删除?", "信息提示",3, this, headerAlertClickHandler);
}else{
Alert.show("请选定一条记录进行操作!", "信息提示");
// PublicFunction.confirmDelete(dataHeaders.selectedItems,secondAlertClickHandler);
protected function btnEditHeader_clickHandler(event:MouseEvent):void
if (dataHeaders.selectedItem!=null){
var myObj:FndLookupHeadersVO=(FndLookupHeadersVO)(dataHeaders.selectedItem);
add=new FndHeaderDM();
PopUpManager.addPopUp(add,parent,true);
PopUpManager.bringToFront(add);
PopUpManager.centerPopUp(add);
add.init(myObj,2,myac);
}else{
Alert.show("请选定一条记录进行操作!", "信息提示");
protected function dataHeaders_changeHandler(event:ListEvent):void
// Alert.show(myac.getItemAt(dataHeaders.selectedIndex)+"");
var myObj:FndLookupHeadersVO=(FndLookupHeadersVO)(myac.getItemAt(dataHeaders.selectedIndex));
var myLineObj:FndLookupLinesVO=new FndLookupLinesVO();
myLineObj.headerId=myObj.headerId;
var token:AsyncToken=linesProxy.getByObj(myLineObj);
PublicFunction.addResponder(token,we_resultHandlerLines,we_faultHeadlerLines);
protected function dataHeaders_doubleClickHandler(event:MouseEvent):void
if (dataHeaders.selectedItem!=null){
var myObj:FndLookupHeadersVO=(FndLookupHeadersVO)(dataHeaders.selectedItem);
add=new FndHeaderDM();
PopUpManager.addPopUp(add,parent,true);
PopUpManager.bringToFront(add);
PopUpManager.centerPopUp(add);
add.init(myObj,2,myac);
}else{
Alert.show("请选定一条记录进行操作!", "信息提示");
protected function dataLines_doubleClickHandler(event:MouseEvent):void
if (dataHeaders.selectedItem!=null)
lineAdd=new FndLineDM();
PopUpManager.addPopUp(lineAdd,parent,true);
PopUpManager.bringToFront(lineAdd);
PopUpManager.centerPopUp(lineAdd);
var lineObject:FndLookupLinesVO=(FndLookupLinesVO)(dataLines.selectedItem);
lineAdd.init(lineObject,2,myacLines);
else
Alert.show("请选定一条记录进行操作!", "信息提示");
protected function btnAddLines_clickHandler(event:MouseEvent):void
if (dataHeaders.selectedItem!=null)
lineAdd=new FndLineDM();
PopUpManager.addPopUp(lineAdd,parent,true);
PopUpManager.bringToFront(lineAdd);
PopUpManager.centerPopUp(lineAdd);
var fndLookupLinesVO:FndLookupLinesVO=new FndLookupLinesVO();
var headerObject:FndLookupHeadersVO=(FndLookupHeadersVO)(dataHeaders.selectedItem);
fndLookupLinesVO.headerId=headerObject.headerId;
lineAdd.init(fndLookupLinesVO,1,myacLines);
else
Alert.show("请选定一条记录进行操作!", "信息提示");
protected function btnEditLines_clickHandler(event:MouseEvent):void
if (dataLines.selectedItem!=null)
lineAdd=new FndLineDM();
PopUpManager.addPopUp(lineAdd,parent,true);
PopUpManager.bringToFront(lineAdd);
PopUpManager.centerPopUp(lineAdd);
var lineObject:FndLookupLinesVO=(FndLookupLinesVO)(dataLines.selectedItem);
lineAdd.init(lineObject,2,myacLines);
else
Alert.show("请选定一条记录进行操作!", "信息提示");
private function lineAlertClickHandler(event:CloseEvent):void {
var myObj:FndLookupLinesVO=(FndLookupLinesVO)(dataLines.selectedItem);
if (event.detail==Alert.YES){
myacLines.removeItemAt(dataLines.selectedIndex);
linesProxy.removeObj(myObj);
protected function btnDelLines_clickHandler(event:MouseEvent):void
if (dataLines.selectedItem!=null){
Alert.show("是否要删除?", "信息提示",3, this, lineAlertClickHandler);
}else{
Alert.show("请选定一条记录进行操作!", "信息提示");
]]>
</fx:Script>
<s:Panel height="100%" width="100%" title="HEADERS" autoLayout="true">
<s:Panel x="0" y="194" height="100%" width="100%" title="LINES" autoLayout="true">
<mx:DataGrid x="10" y="39" height="100%" width="100%" id="dataLines" dataProvider="{myacLines}" doubleClickEnabled="true" doubleClick="dataLines_doubleClickHandler(event)">
<mx:columns>
<mx:DataGridColumn headerText="#RowNo" labelFunction="lfRowNumLines" width="50"/>
<mx:DataGridColumn headerText="LINE_ID" dataField="lineId"/>
<mx:DataGridColumn headerText="LOOKUP_CODE" dataField="lookupCode"/>
<mx:DataGridColumn headerText="MEANING" dataField="meaning"/>
<mx:DataGridColumn headerText="DESCRIPTION" dataField="description"/>
</mx:columns>
</mx:DataGrid>
<s:Button x="200" y="10" label="删除" id="btnDelLines" click="btnDelLines_clickHandler(event)"/>
<s:Button x="10" y="10" label="追加" id="btnAddLines" click="btnAddLines_clickHandler(event)"/>
<s:Button x="102" y="10" label="编辑" id="btnEditLines" click="btnEditLines_clickHandler(event)"/>
</s:Panel>
<s:Button x="10" y="10" label="追加" id="btnAddHeader" click="btnAddHeader_clickHandler(event)"/>
<s:Button x="106" y="10" label="编辑" id="btnEditHeader" click="btnEditHeader_clickHandler(event)"/>
<s:Button x="207" y="10" label="删除" id="btnDelHeader" click="btnDelHeader_clickHandler(event)"/>
<mx:DataGrid x="10" y="39" height="147" width="100%" change="dataHeaders_changeHandler(event)" doubleClick="dataHeaders_doubleClickHandler(event)" dataProvider="{myac}" id="dataHeaders" doubleClickEnabled="true" lockedColumnCount="1">
<mx:columns>
<mx:DataGridColumn headerText="#RowNo" labelFunction="lfRowNum" width="50" />
<mx:DataGridColumn headerText="HEADER_ID" dataField="headerId"/>
<mx:DataGridColumn headerText="LOOKUP_TABLE" dataField="lookupTable"/>
<mx:DataGridColumn headerText="LOOKUP_COLUMN" dataField="lookupColumn"/>
<mx:DataGridColumn headerText="LOOKUP_DESCRIPTION" dataField="lookupDescription"/>
</mx:columns>
</mx:DataGrid>
</s:Panel>
</mx:Module>
When I execute btnAddHeader_clickHandler(event) function,error information in the fellowing:
Error: 找不到 FndHeaderDM232.SkinnableContainerSkin233.contentGroup.frm.FormItem238.txtTable 的外观。
at spark.components.supportClasses::SkinnableComponent/attachSkin()[E:\dev\4.x\frameworks\pr ojects\spark\src\spark\components\supportClasses\SkinnableComponent.as:632]
at spark.components.supportClasses::SkinnableComponent/validateSkinChange()[E:\dev\4.x\frame works\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:405]
at spark.components.supportClasses::SkinnableComponent/createChildren()[E:\dev\4.x\framework s\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:368]
at mx.core::UIComponent/initialize()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UI Component.as:7349]
at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.x\frameworks\projects\fr amework\src\mx\core\UIComponent.as:7241]
at mx.core::Container/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.x\frameworks\projects\fr amework\src\mx\core\Container.as:3972]
at mx.core::Container/addChildAt()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\Cont ainer.as:2616]
at mx.core::Container/addChild()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\Contai ner.as:2534]
at mx.core::Container/createComponentFromDescriptor()[E:\dev\4.x\frameworks\projects\framewo rk\src\mx\core\Container.as:4392]
at mx.core::Container/createComponentsFromDescriptors()[E:\dev\4.x\frameworks\projects\frame work\src\mx\core\Container.as:4181]
at mx.core::Container/createChildren()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\ Container.as:3187]
at mx.containers::FormItem/createChildren()[E:\dev\4.x\frameworks\projects\framework\src\mx\ containers\FormItem.as:479]
at mx.core::UIComponent/initialize()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UI Component.as:7349]
at mx.core::Container/initialize()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\Cont ainer.as:3129]
at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.x\frameworks\projects\fr amework\src\mx\core\UIComponent.as:7241]
at mx.core::Container/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.x\frameworks\projects\fr amework\src\mx\core\Container.as:3972]
at mx.core::Container/addChildAt()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\Cont ainer.as:2616]
at mx.containers::Form/addChildAt()[E:\dev\4.x\frameworks\projects\framework\src\mx\containe rs\Form.as:293]
at mx.core::Container/addChild()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\Contai ner.as:2534]
at mx.containers::Form/addChild()[E:\dev\4.x\frameworks\projects\framework\src\mx\containers \Form.as:282]
at mx.core::Container/createComponentFromDescriptor()[E:\dev\4.x\frameworks\projects\framewo rk\src\mx\core\Container.as:4392]
at mx.core::Container/createComponentsFromDescriptors()[E:\dev\4.x\frameworks\projects\frame work\src\mx\core\Container.as:4181]
at mx.core::Container/createChildren()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\ Container.as:3187]
at mx.core::UIComponent/initialize()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UI Component.as:7349]
at mx.core::Container/initialize()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\Cont ainer.as:3129]
at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.x\frameworks\projects\fr amework\src\mx\core\UIComponent.as:7241]
at mx.core::UIComponent/addChildAt()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UI Component.as:6947]
at spark.components::Group/addDisplayObjectToDisplayList()[E:\dev\4.x\frameworks\projects\sp ark\src\spark\components\Group.as:1825]
at spark.components::Group/http://www.adobe.com/2006/flex/mx/internal::elementAdded()[E:\dev\4.x\frameworks\projects\ spark\src\spark\components\Group.as:1416]
at spark.components::Group/setMXMLContent()[E:\dev\4.x\frameworks\projects\spark\src\spark\c omponents\Group.as:512]
at spark.components::Group/set mxmlContent()[E:\dev\4.x\frameworks\projects\spark\src\spark\components\Group.as:452]
at spark.components::SkinnableContainer/set mxmlContent()[E:\dev\4.x\frameworks\projects\spark\src\spark\components\SkinnableContaine r.as:604]
at spark.components::SkinnableContainer/createDeferredContent()[E:\dev\4.x\frameworks\projec ts\spark\src\spark\components\SkinnableContainer.as:986]
at spark.components::SkinnableContainer/createContentIfNeeded()[E:\dev\4.x\frameworks\projec ts\spark\src\spark\components\SkinnableContainer.as:1014]
at spark.components::SkinnableContainer/createChildren()[E:\dev\4.x\frameworks\projects\spar k\src\spark\components\SkinnableContainer.as:827]
at mx.core::UIComponent/initialize()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UI Component.as:7349]
at org.mydev.fnd.view::FndHeaderDM/initialize()
at mx.managers.systemClasses::ChildManager/childAdded()[E:\dev\4.x\frameworks\projects\frame work\src\mx\managers\systemClasses\ChildManager.as:189]
at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::rawChildren_addChildAt()[E:\dev\4.x\frameworks \projects\framework\src\mx\managers\SystemManager.as:1963]
at mx.managers::SystemManager/addChildAt()[E:\dev\4.x\frameworks\projects\framework\src\mx\m anagers\SystemManager.as:1595]
at mx.managers::SystemManager/addChild()[E:\dev\4.x\frameworks\projects\framework\src\mx\man agers\SystemManager.as:1578]
at mx.managers::PopUpManagerImpl/addPopUp()[E:\dev\4.x\frameworks\projects\framework\src\mx\ managers\PopUpManagerImpl.as:346]
at mx.managers::PopUpManager$/addPopUp()[E:\dev\4.x\frameworks\projects\framework\src\mx\man agers\PopUpManager.as:193]
at org.mydev.fnd.view::FndLookupDM/btnAddHeader_clickHandler()[D:\eclipse-jee-galileo-SR1-wi n32\workspace\subapp\flex_src\org\mydev\fnd\view\FndLookupDM.mxml:88]
at org.mydev.fnd.view::FndLookupDM/__btnAddHeader_click()[D:\eclipse-jee-galileo-SR1-win32\w orkspace\subapp\flex_src\org\mydev\fnd\view\FndLookupDM.mxml:264]
I hope you help me,I'm Flex new develper. thanks!
My Email: [email protected].Hi
I have a similar (but not exactly the same, see my post: http://forums.adobe.com/message/3943082#3943082). I tried your solution but I don't really understand what you mean by
2) The module is being linked into the main application. There are plenty
of old discussions on this topic.
Can you be more specific ?
Thank you !!
Max -
Flex Builder 2 doesn error check .as files????
When I make new flex project (basic project) and then make
new ActionScript class or file, I can type ANYTHING in and when I
save, Flex Builder doesn't report any error! Only when I try to run
application it reports an error. This doesn't happen inside of
script blocks in mxml files.
It is totally unacceptable!
Is it possible to change this?Hi dude,
There's already a thread about this topic:
Flex
Builder 2.0 Plugin for RAD7.0
Cheers -- -
Flex 4 Modules Creation Cycle bug ?
http://filip.nedyalkov.net/creationcycle/ - view source is enabled, download and see the traces
Ok so here is what happens in this application:
Some elements are created in the main application and also a module is loaded. As soon as it is ready the button in the main app goes visible. When you click it the module is added to the main application.
There is where it gets weird. If the module loader is not added to the main application before the module is ready, everything I've set into the module gets created kinda randomly. For example if I have a button in the module, it should fire button created and then module created, but here it doesn't sometimes. Check out the application I've provided to see what I mean.
I think that it shouldn't matter if the module loader is added or not, and the module should fire the creation complete events in the normal order, from bottom to top (top is the module itself).
So I hope someone familiar with modules life cycle behaviour could say if what I see is a bug or not and how it can be fixed. Of course I could add the module loader before the module is loaded but make the moduleloader visible=false, and when I need it visible=true, but that's not the point here.
ThanksGo to this thread: http://forums.adobe.com/thread/764956 - this is with better example.
-
Hi Gurus,
I'm trying to use exclusion module for listing but it doesn't work.
1. I created exclusion module and add an article XXX
2. I assign this exclusion module to assortment Z001
3. I tried to list article XXX into assortment Z001, and the article can be listed successfully...
Could you please give a normal procedure for exlusion module?Andreas is right, listing takes place.
The exclusion will also be effective in procurement (ME21N) where you cannot procure an excluded article. The system checks in two steps:
1. Is there a listing condition
2. Is there an exclusion
Regards -
Itunes doesn't sync due to lack of memory
Hi, my iTunes doesn't synch my ipod touch anymore due to the fact that the ipod lacks the memory to import. In the past, it would make a special playlist for my ipod, but iTunes doesn't even give this option anymore.
Does anyone have an idea how i can force itunes to make this playlist again?
Sorry for my crappy english, but i'm not used to typing english anymoreOpen iTunes and create a playlist to update your iPod from, call it -My iPod for example (the dash will position it at the top of the playlists in Sources). You can make it a smart playlist that picks the songs for you or just a normal one and drag whatever content you want to have into the playlist. If you are making a smart playlist limit it to just less than the size of your iPod. Now connect your iPod and when it appears in the Source list click on the iPod icon to bring up the preference tabs in the main pane. Go to the Music tab and choose Sync Music and the Selected playlists radio button. Choose the playlist you just made from the selection and click Apply. You can also sync from any existing playlists by choosing the same setting, you just need to make sure that the size of the playlists don't exceed the capacity of your iPod:
How to create a Smart Playlist with iTunes
Syncing Music to iPod
To make a random playlist you could adapt this example to suit the capacity of your iPod (this one is for a 4GB Model). Go to File>New Smart Playlist.
Uncheck "Match the following rule"
Check "Limit to" put "3700" in the number box, choose "MB" from the first list box, choose "Random" from the next list box. Check "Live Updating"
When you want to change the selection in the smart playlist just delete everything in it and it will add a new selection. When you want to change the normal playlist just delete out what you don't want and drag in a new selection.
Maybe you are looking for
-
How do I play video from my ipod touch on my tv
I want to play a downloaded video from my ipod touch on my tv, everything I've read so far talks about jailbreaking my ipod and this is something I really don't want to do. My tv has HDMI, USB and AV cable ports, I've tried plugging in via the USB wi
-
Exchange, IIS and WNLB issues
Hello everyone. I have a strange IIS/Exchange issue that I am stuggling to solve and could use some assistance with. Our site setup: 2 * Exchange 2010 CAS servers running in a CAS array with WNLB on subnet A 2 * Exchange 2010 CAS servers running in a
-
Hello
-
More info on DRAW table and DRAZ table
Hello, I am new in SAP trying to upgrade some existing code. I am looking for information concerning the DRAW and DRAZ tables and their benefits. any help is highly appreciated. Thank you
-
Inserting html snippets for paypal buttons into templates
I can insert html snippets(for pay pal buttons) into an iweb page that I've created but if I go to the slide shows and try to add a button to those it puts the buttons on ALL the slides. Any remedy as I'd like to use the photo templates AND pay pal b