Check if component is visible

I implemented a gallery displaying some images. This worked fine for the few images, I had in my example. However as soon as there are more images (>100) memory becomes an issue, as all images are initialized when the gallery is loaded.
Is there an easy way to implement lazy loading? I figure it would suffice to know which component (e.g. HBox) is visible, everything above and below could be loaded when it becomes visible (or I could load on or two rows that are not visible to improve scrolling)

I implemented a quick test with the ListView and a CellFactory:
package javafxtest.image;
import java.io.File;
import java.net.MalformedURLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
import javafx.scene.control.ListCell;
import javafx.scene.control.ListView;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.image.ImageViewBuilder;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import javafx.util.Callback;
public class ImageGallery extends Application {
    @Override
    public void start(Stage primaryStage) {
        ListView<String> imageNames = new ListView<>();
        File dir = new File("/home/andi/Pictures");
        ArrayList<String> list = new ArrayList<>();
        for (File f : dir.listFiles()) {
            try {
                list.add(f.toURI().toURL().toExternalForm());
            } catch (MalformedURLException ex) {
                Logger.getLogger(ImageGallery.class.getName()).log(Level.SEVERE, null, ex);
        ObservableList<String> names = FXCollections.observableArrayList(list);
        imageNames.setItems(names);
        imageNames.setCellFactory(new Callback<ListView<String>,
            ListCell<String>>() {
                @Override
                public ListCell<String> call(ListView<String> list) {
                    return new ImageListCell();
        StackPane root = new StackPane();
        root.getChildren().add(imageNames);
        Scene scene = new Scene(root, 500, 600);
        primaryStage.setTitle("Image Gallery");
        primaryStage.setScene(scene);
        primaryStage.show();
    public static void main(String[] args) {
        launch(args);
    private static class ImageListCell extends ListCell<String> {
        @Override
        protected void updateItem(String item, boolean empty) {
            super.updateItem(item, empty);
            if (item != null) {
                Image img = new Image(item);
System.out.println("Update timestamp: "+System.currentTimeMillis()+" load image "+item);
                ImageView imageView = ImageViewBuilder.create()
                        .image(img).build();
                setGraphic(imageView);
}Checking this piece of code with the profiler shows that the memory usage increases constantly the more I scroll through the list. Perhaps I'm missing here something? If the cell would be reused, the GC should be able to collect all the image instances that are no longer visible and thereby keep the memory usage more or less at the same level.
Taking a look at the memory results, I can see that there are some ImageListCell instances, but the big part of the memory is consumed by byte arrays. I suppose the image data goes into those arrays.

Similar Messages

  • Error during check of component BP_EEW view ContactRelEL in WCF_CC T.code

    In CRM 7.0 EhP1, Perform Check showed error in UI Configuration that:
    "Context Node Attribute does not exist: STRUCT.ZZFIELD in Object type: BP_ACCOUNT, Subobject type: ZZI5TEEWCONTACT
    Role Config Key: <DEFAULT>, Component Usage: <DEFAULT>".
    Please help on how to resolve this.
    Also, appreciate your help in providing information resources in working with WCF_CC t.code, how to rectify errors?

    Thanks Leon.
    I selected the edit button, which lauched the UI Config tool. I noticed that the field attribute properties is not Hidden.
    I do not see an assignment to Design layer. I tried to add Assignment.
    Selected the object type BP_ACCOUNT & expanded it. But did not find the sub objectype ZZI5TEEWCONTACT.
    What is the assignment I should make?
    Information I'm looking for is to how to work with the transaction. It is intuitive, but I'm looking for information as to how to navigate to various places and fix issues.
    For Eg: Error during check of component BP_EEW view RelEL was the error message.
    I couldn't find any clue to proceed with this.
    Please tell me the needful information I should be equipped with to understand & resolve issues.
    Edited by: crmdevelopers on Jan 25, 2012 7:08 PM

  • How to check SAP Component version and what is the latest patch installed

    Hi Experts,
    Can you please tell me that how to check SAP Component version and what is the latest patch installed.
    Thanks

    there are 2 easy ways
    1) log on to SAp System, on menu bar, slect system > Status...
    2) log on to system URL and click on system Status...
    Thanks,
    Prasant K Paichha

  • If I use a check box component then FScommand2 Quit does not work

    If I use a check box component then FScommand2 Quit does not
    work? Even tho the check box component works fine.
    Why is this so? I spent two hours tearing my hair out to work
    this out!

    I have tried to help my friend Blasta and then he export the photo (as you told us to do)  the description is lost. Then I have read your god advices I took up one photo in Graphic Converter with result:
    ---- ExifTool ----
    ExifTool Version Number: 9.39
    ---- System ----
    File Name: DSC00160.jpg
    Directory: /Users/akesjodin/Documents/Jan 2
    File Size: 594 kB
    File Modification Date/Time: 2013:12:17 13:46:16+01:00
    File Access Date/Time: 2013:12:17 13:51:37+01:00
    File Inode Change Date/Time: 2013:12:17 13:48:05+01:00
    File Permissions:
    rw-r--r--
    ---- File ----
    File Type: JPEG
    MIME Type: image/jpeg
    Current IPTC Digest: fac9fec98a44c4d807be572ed64373d6
    Exif Byte Order: Big-endian (Motorola, MM)
    Image Width: 3328
    Image Height: 2216
    Encoding Process: Baseline DCT, Huffman coding
    Bits Per Sample: 8
    Color Components: 3
    Y Cb Cr Sub Sampling: YCbCr4:2:0 (2 2)
    ---- JFIF ----
    JFIF Version: 1.01
    Resolution Unit: inches
    X Resolution: 72
    Y Resolution: 72
    ---- IPTC ----
    Coded Character Set: UTF8
    Application Record Version: 2
    Caption-Abstract: Alla bilder Gepe Made in Sweden (41 stycken) utom 17 stycken Agfacolor Service German Made, 1 stycken Agfacolor Dia Agfa, 15 stycken Kodachrome Slide Kodak Processed by Kodak, 5 stycken Kodachrome Transparency Processed by Kodak och 1 stycken okänd...Bergastrand. X. 1970. Blandade bilder. .(Somm?)ar 1970 1 magasin..Torsten Erna 1 magasin..Blandade bilder 710-749...Bergastrand...Vänstra magasinet: Bergastrand 1 år I...12-68. 701.
    Object Name: DSC00160
    and there is the description text in Caption-Abstract under ----IPTC---
    If I use Preview I can´t se any descrption and if I import to Iphoto no descption.
    we are very greatful for all help

  • ATP check for component materials

    Hello experts,
    The ATP check was initially designed for a kitting process. BOM Material would be kitted in the distribution center(DC) and sent to a garage. Sales orders are created with BOM materials for a garage and there is a multi- level GATP process in place. Since BOM materials do not  exist at a garage the check would be performed at a DC for components after BOM explosion. The existing configurations in R3 and APO are for a make to order process(Strategy  group of 50 for BOM's  and 40 for component).
    We are now introducing new materials for an existing material and have the need for product substitution on the sales order, if the existing material is out of stock at the DC. To enable this functionality we are having to perform an ATP check for the sales orders at the distribution center, though the sales order is   created for a garage. To improve on the response times during the ATP check our design approach, is to convert the BOM materials in the sales order to component  materials with material determination(one BOM material is tied to one component material) and performing the ATP check with components at the DC.
    While testing we are facing the following issues:
    1)Sales order placed on a garage is substituted with the DC after product substitution.  This does not occur when product substitution is carried out with BOM's.
    2)During the order create, the ATP checks for check mode u201845u2019 and business event u2018AEu2019 for a given material in a DC shows zero stock. While for the same material,location and business event AE the product availability check in APO reflects stocks available.
    Is it feasible to do ATP checks for component material in a sales order which was initially designed to work with BOM materials? Am I missing some configuration settings in either APO or R3?
    Regards,
    Anil DeSouza

    Hi Anil,
         Yes it can be done.
    1) For finished product & garage combination -
    activate RBATP in the check instructions.
    2) in the location substitution maintain 'location determination sctivity'. Here you maintain different check mode & business event -- ( this is nothing but check instruction --- in thsi you maintain 'MATP').
    Hope this anws your first qus.
    To addressing your 2nd question....follow below steps.
    1) Do ATP from sales order, get onto results screen, click on product availability & check for 'scope of check' (check control) and look for the stock types that are included. Based on this your receipts are consdiered for ATP confirmation.
    Best Regards,
    Deepthi

  • Integration Scenario - Component not visible

    Hi all,
    I have two s/w components - say main component and sender component. Both belong to the same product version.
    I have created an integration scenario in the main component and I want to create a swim lane corresponding to 'actions' that are already created in the sender component.
    So, when I choose "Insert application component" in the scenario's swim lane area, and select the product version, it does NOT show the sender component !
    Hence I am unable to include the actions of sender component in the integration scenario.
    I have also checked from SLD that there are few more components (like the sender component) that are assigned to the same product version, but still not visible while creating a swim lane, as mentioned above.
    I have tried the option of clearing SLD data cache, but it didn't help.
    What can be done about this ?
    Regards,

    Hi,
    did you make those software components dependet?
    just like in my weblog?:
    /people/michal.krawczyk2/blog/2005/08/26/xi-are-you-independentfrom-your-dependencies
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Component's visible bounds on screen

    I need to know the bounds of a component relative to the window or the screen. the problem is, the component could reside in a viewport or internal frame or even a mixture of multiple of them. is there a way to tell the visible bounds of such a component?
    the straight solution would be to call component.getParent() and check for instances of JViewPort or JDesktopPane and somehow translate the points, I think. But that doesn't seem very smart or handy. Maybe you've got some better solution for that?
    thx in advance,
    aqua23.

    here is some code:
    * Created on Apr 20, 2004
    * @author cwickesser
    * Project Name: Test
    * Package Name: test
    package test;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Point;
    import java.awt.Rectangle;
    import java.beans.PropertyChangeEvent;
    import java.beans.PropertyVetoException;
    import java.beans.VetoableChangeListener;
    import javax.swing.DefaultDesktopManager;
    import javax.swing.JButton;
    import javax.swing.JComponent;
    import javax.swing.JDesktopPane;
    import javax.swing.JFrame;
    import javax.swing.JInternalFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.SwingUtilities;
    import javax.swing.event.InternalFrameAdapter;
    import javax.swing.event.InternalFrameEvent;
    import javax.swing.plaf.basic.BasicInternalFrameTitlePane;
    import javax.swing.plaf.basic.BasicInternalFrameUI;
    public class TestInternalFrame extends JDesktopPane implements VetoableChangeListener {
         myFrame jif;
         Rectangle bounds;
         public TestInternalFrame() {
              setDesktopManager(new mdm());
              for (int i = 0; i < 1; i++) {
                   JPanel p = new JPanel();
                   JButton b = new JButton("Test" + i);
                   p.add(b);
                   p.setMinimumSize(new Dimension(100,100));
                   p.setPreferredSize(new Dimension(100,100));
                   p.setSize(new Dimension(100,100));
                   jif = new myFrame(String.valueOf(i), true, false, true, true);
         //          jif.getContentPane().add(p);
         //          jif.addVetoableChangeListener(this);
                   jif.addInternalFrameListener(new InternalFrameAdapter() {
                        public void internalFrameIconified(InternalFrameEvent e) {
                             JInternalFrame.JDesktopIcon jdi = ((JInternalFrame) e.getSource()).getDesktopIcon();
                             System.out.println("Location of " + ((JInternalFrame) e.getSource()).getTitle() + " = " + jdi.getLocation());
                   // set the minimized location
         //          JInternalFrame.JDesktopIcon jdi = jif.getDesktopIcon();
         //          jdi.setLocation(50,50);
                   jif.setSize(70,70);
                   jif.show();
                   JScrollPane sp = new JScrollPane();
                   sp.add(p);
                   sp.setViewportView(p);
                   jif.getContentPane().add(sp);
                   add(jif);
    //               try {
    //                    if (i == 0) {
    //                         JInternalFrame.JDesktopIcon jdi = jif.getDesktopIcon();
    //                         jif.setMaximum(true);
    //                    else
    //                         jif.setIcon(true);
    //               } catch (PropertyVetoException e1) {
    //                    e1.printStackTrace();
         public static void main(String[] args) {
              JFrame f = new JFrame();
              f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              f.getContentPane().add(new TestInternalFrame());
              f.setSize(500,500);
              f.show();
         public void vetoableChange(PropertyChangeEvent evt) throws PropertyVetoException {
              String property = evt.getPropertyName();
              if (property.equals(JInternalFrame.IS_ICON_PROPERTY)) {
                   boolean isIcon = ((Boolean)evt.getNewValue()).booleanValue();
                   if (!isIcon) {
                        throw new PropertyVetoException("message", evt);
         private class myFrame extends JInternalFrame {
               * @param title
               * @param resizable
               * @param closable
               * @param maximizable
               * @param iconifiable
              public myFrame(String title, boolean resizable, boolean closable,
                        boolean maximizable, boolean iconifiable) {
                   super(title, resizable, closable, maximizable, iconifiable);
                   // myFrameUI causes titleBar to be hidden
    //               setUI(new myFrameUI(this));
                   // this will make it borderless
    //               setBorder(null);
         private class myFrameUI extends BasicInternalFrameUI {
              public myFrameUI(JInternalFrame f) {
                   super(f);
              protected JComponent createNorthPane(JInternalFrame w) {
                   titlePane = new BasicInternalFrameTitlePane(w);
                   return new JLabel();
    //               return titlePane; <--- old variant from original
         private class mdm extends DefaultDesktopManager {
              boolean temp = false;
              JInternalFrame activeFrame;
              protected Rectangle getBoundsForIconOf(JInternalFrame f){
                   JDesktopPane p = f.getDesktopPane();
                   JInternalFrame[] frames = p.getAllFrames();
                   int iconifiedCount = 0;
                   for (int i = 0; i < frames.length; i++) {
                        if (frames.isIcon()){
                             iconifiedCount++;
                   Rectangle r = f.getDesktopIcon().getBounds();
                   int totalY;
                   int totalX;
    //               // x=0,y=0 is at bottom left
    //               if (p.getWidth() == 0 && p.getHeight() == 0) {
    //                    System.out.println("HERE");
    //                    totalX = r.width * (iconifiedCount - 1);
    //                    totalY = (-1) * r.height;
    //               // x=0,y=0 is at top left
    //               else {
    //                    System.out.println("THERE");
    //                    totalX = r.width * (iconifiedCount - 1);
    //                    totalY = r.height * (iconifiedCount);
                   // IF PANEL IS DE-ICONIFIED INITIALLY
                   totalX = 0;
                   totalY = 0;
                   // CHANGE THIS IF PANEL IS ICONIFIED INITIALLY
    //               totalX = 0;
    //               totalY = (-1) * r.height;
                   r.y = totalY;
                   r.x = totalX;
                   return r;
              public void deiconifyFrame(JInternalFrame f) {
                   super.deiconifyFrame(f);
                   cascadeWindows();
              public Rectangle getVisibleBoundsOnScreen(JComponent component) {
                   Rectangle visibleRect = component.getVisibleRect();
                   Point onScreen = visibleRect.getLocation();
                   SwingUtilities.convertPointToScreen(onScreen, component);
                   visibleRect.setLocation(onScreen);
                   return(visibleRect);
              public void beginDraggingFrame(JComponent f) {
                   super.beginDraggingFrame(f);
              public void activateFrame(JInternalFrame f) {
                   super.activateFrame(f);
                   activeFrame = f;
         public void cascadeWindows() {
              JInternalFrame[] frames = this.getAllFrames();
         int x = 0;
         int y = 0;
         int width = this.getWidth() / 2;
         int height = this.getHeight() / 2;
         int frameDistance = 20;
         for (int i = 0; i < frames.length; i++)
         {  if (!frames[i].isIcon())
         {  try
         {  /* try to make maximized frames resizable
         this might be vetoed
         frames[i].setMaximum(false);
         frames[i].reshape(x, y, width, height);
         x += frameDistance;
         y += frameDistance;
         // wrap around at the desktop edge
         if (x + width > this.getWidth()) x = 0;
         if (y + height > this.getHeight()) y = 0;
         catch(PropertyVetoException e)
    currently, the frame is de-iconified to begin with,and when it is iconified its icon is set to 0,0 (which is the top left corner)....if u uncomment the try/catch int he constructor, and uncomment the jif.setIcon(true)...the frame will be iconified to begin with. Also, in my DefaultDesktopManager subclass, uncomment the lines that say "CHANGE THIS..."
    when u run the application with the frame iconified, and set the location to 0,-31 u will see that the icon is at the bottom left. however, change it so totalX = 0 and totalY = 0 when u iconify the frame initially...and when u run the app, the icon will not be on the screen! that's because the coordinates change!!

  • Need to "getGraphics()" before a component is visible...

    I have this interesting dilema, and anyone that has a better suggestion, please go ahead and suggest it.
    I am making my own Button class (for fun, it extends JComponent), and am having issues with determining it's size correctly. For example, if someone creates a button with the text "OK" in it, I measure the text and see that its less than 75 pixels, so I set my button's DEFAULT SIZE to 75x23 (that just happens to be the default size for all my buttons, std Windows default button size). So anyway, if someone enters the text "I like ice cream with carrots on it", I obviously would measure that text, then make the button size something like:
    buttonPadding.left + getGraphics.getFontMetrics.stringWidth( text ) + buttonPadding.right
    Which is more or less what I do now. Ok, the PROBLEM is that in order to have access to something (FontMetrics) that can measure the length of my string in pixels, it seems I need access to the Graphics context first, which only happens when the component has actually been given the visible go-ahead by the WM or Java (I don't know which). So the way I am getting my graphics and setting my size before the component actually becomes visible, but after I have access to the getGraphics() Graphics context, is by putting this checking/resizing code in "getPreferredSize" (which was also a choice so it would work nicely with the layout managers in Swing). This seems such a god aweful place for me to put this code, but on the same note, I don't know where a better place to put it is. I can't seem to get access to a graphics context anyplace else and still size the object nicely before it paints.
    All this code SHOULD go into the constructor or some other initialization method, but once again, its not visible at this point and I can't get my FontMetrics object to measure the string in pixels.
    Can anyone shed some light on this situation for me? Am I just going about this totally wrong? And if I'm not, what is another way I can use to get an object that can measure the string in pixels?
    Thanks again,
    -Riyad

    Hi!
    try this example code:
    import java.awt.*;
    import javax.swing.*;
    public class MyFrame extends JFrame
    final String text = "Do you really like ice cream with carots on it?";
    final int x = 50;
    final int y = 100;
    MyButton mb;
    public MyFrame(String title)
    super(title);
    setSize(400,300);
    getContentPane().setLayout(null);
    mb = new MyButton(text);
    mb.setLocation(x,y);
    getContentPane().add(mb);
    public static void main(String[] args)
    (new MyFrame("My frame")).setVisible(true);
    class MyButton extends JButton
    public MyButton(String text)
    super(text);
    public void addNotify()
    super.addNotify();
    Font font = getFont();
    FontMetrics fm = getFontMetrics(font);
    int width = fm.stringWidth(getText());
    int height = fm.getHeight();
    Insets ins = getInsets();
    setSize(new Dimension(width+ins.left+ins.right, height+ins.top+ins.bottom));
    Hope this helps...
    cbmn2.

  • Development Component not visible in the Consolidation Compartment in CBS

    Hi Experts,
    We have created a new development component on the track for which we
    have created an DTR activity. After we checked in, activated & released
    the activity successfully, we went to the consolidation tab in CMS and
    imported the activity. We could successfully imported the activity into
    consolidation system and got the message import finished. But when I checked
    in the Consolidation compartment, I could not found out my newly
    created Development component. I feel that the activities are not going there.
    I also tried restarting the NWDI server but still no luck.
    Kindly assist as without solving this issue we cannot assemble our
    components and cannot move them to Quality environment.
    Also, kindly assist how can we transport the entire SCA (where we have done the custom development) from development
    to Consolidation for the same state?
    Currently, we have lesser number of DCs in the SCA of my cons environment than my dev environment, so how can I exactly have the same state of custom developed SCA in my cons environment?
    Is there any provision of system restore so that we can overcome the above issue or any other means by which we can move the entire SCA from my dev environment to cons environment.
    Please suggest as this is affecting our go live activities.
    Thanks & Regards,
    Anurag

    Hi,
    when you have imported into cons and it said finished succesfully, then clicking on the button "Details..." can you confirm that all the 3 phases were succesful (dtr import, cbs make and deployment) ?
    Do you have any pending activations? You can check it in the CBS webui -- page "Activities".
    Can you see any requests in the TCS deployer as described by Pramod ? (you need to look for numbers in square brackets [ ]. If there are any it means that those requests are still being deployed. If this is the case and the requests are not disappearing from the TCS Deployer, then doublecheck if the RTS settings for CONS are ok. Here a hint for that: http://wiki.sdn.sap.com/wiki/display/TechTSG/%28NWDI%29%28CMS%29Q0002).
    Eventually if all this is fine, can you please trigger an Initialize Compartment (you do this in CBS webui -- select your CONS compartment).
    I hope this helps.
    Thanks and Regards,
    Ervin

  • Availability check of component in the order

    Hi,
    how to check the availability of all the BOM components of a finish product in the order.
    Thanks for your help

    Hi,
    There are two ways to process a bill of materials in Sales. Once you have entered a bill of material in a sales order, the system runs pricing, inventory control, and delivery processing at:
    1 Main item level if the material is assembled, or
    component level if the material is not assembled
    The type of processing is determined by the item category group(MMR-Sales: sales org. 2 screen).
    In the first case mentioned above use the ERLA Item Category group then the system will carry out pricing, inventory control, and delivery processing at main item level,   In this case  the components will function as text items and are not relevant for delivery.
    Whereas in the second case Use the LUMF as item category group then system will carry out pricing, inventory control, and delivery processing at the component level, . In this case, only the components are relevant for delivery. During processing the system automatically creates a delivery group.
    Also check the below link
    http://help.sap.com/saphelp_47x200/helpdata/en/70/a7853478616434e10000009b38f83b/frameset.htm
    Hope this will  help you.
    Thanks and Regards,
    Atul
    Edited by: Atul Dagade on Mar 27, 2009 12:17 AM

  • Development Component not visible in dev config, but visible in DTR,CBS

    Hi,
    we have recently migrated our production track from netweaver 2004 to 2004s. In the Dev Config perspective I am unable to see a DC, but I am able to see the same from the DTR perspective. I am also able to see this DC in CBS.
    I am unable to create a project or work on this DC because of this problem.
    Has anyone else faced the same problem ? What can be done to make the DC visible in the Dev Config ?
    Thanks in advance for your help.
    Warm regards,
    Rashmi

    Hi Dao,
    Thanks again for your reply.
    Here are the findings :
    1)The DC is not available in both the active and inactive tabs in the Dev config perspetive.
    2) I have only NWDS 7.0 on my machine, but Admin has the older version 6.4 and it was not visible on their machine.
    3) I tried Re-Synching the archives, but still no luck, the DC is still invisible.
    4)The DC was last modified during the creation of the new track, the activities making changes to the DC before that are mostly UI changes, no deletes etc.. which could cause the DC to not be visible.
    5) It is a WD DC.
    6) The DC exists in Cons/Dev (both active/inactive) DTR workspaces as well as CBS build spaces (on both versions of the track)
    7)There are no pending activities for this DC in the old track.
    8)There were couple of broken DCs on the new track but this is mainly because of compile time errors due to use of deprecated methods.
    While checking for all these items I noticed that the .dcref file for the DC is missing in the DTR for both active and inactive, could this mean anything ? Is this the reason for the DC not being visible in the Dev Config perspective ?
    Is there any way to recover the DC ?
    Thanks in advance for your help.
    Warm regards,
    Rashmi

  • Tab Component Dynamic Visibility to Combo Boxes

    I am using a Tab component.  I have 3 tabs on my dashboard.  I have 2 Combo boxes that I am using to filter rows of data on 3 Excel sheets.  Both Combo boxes are not used on all the tabs.  How can I pass example: User clicks on Tab 1 and use dynamic visibility for Combo Box 1 and Combo Box 2 are visible.  If the user clicks on Tab 2 I want only Combo Box 1 to be visible.

    Hi Joe,
    This can be achieved in Dynamic visibility.
    On click on Tab,just map to some target(say value "1") and then For Combo box,set target cell mapped for tab to 1,which means when the target cell gets "1",show the Combo box.
    If you are not clear then you can refer the following URL,which will give you more informations about this.
    http://everythingxcelsius.com/2008/08/tip-7-xcelsius-dynamic-visibility-video-tutorial.html
    Rgds,
    Murali

  • How to check if component is textfield?

    Hello I am trying to check to see whether a component in a panel is a textfield or not!
    I have:
    Component[] components = panel3.getComponents();
         for (int i = 0; i < components.length; i++)
          if //stuck hereCan anyone point me int he right direction.
    Thank you for any reply,
    Regards,
    Yad.

    It's useful to look at the API documentation for java.awt.TextField you'll be able to see the methods which TextField has.
    TextField has a getText() method which returns a String.
    Good Luck.

  • Component is  visible only  when frame is resize why?

    hai,
    In My application the components are visible only when the JFrame is resize...... why is it so?
    The problem is in login screen..
    that is the frame is displayed in middle the default layer for this borderlayout.... the panel here consists of gridbaglayout
    whats the problem? the size are all i have checked no problem
    Please help me out
    Shanthy

    Probably because you've added the components to the GUI after the GUI is visible.
    If this is the case then you need to revalidate the parent container.
    If you need further help then you need to create a [url http://homepage1.nifty.com/algafield/sscce.html]Short, Self Contained, Compilable and Executable, Example Program that demonstrates the incorrect behaviour, because I can't guess exactly what you are doing based on the information provided.
    And don't forget to use the [url http://forum.java.sun.com/help.jspa?sec=formatting]Code Formatting Tags so the code retains its original formatting.

  • Z logical component not visible in project administration

    Hi All,
    I have created new product in SMSY named ZLegacy and assigned logical component.
    But when I try to assign this logical component to my project, I dont see the Zproduct. Is there any table which I need to change manually ?
    BR,
    Shyam

    This forum is for the Flex SDK. The Flash Builder (formerly Flex Builder) IDE has its own dedicated forum. Questions specific to the IDE should be directed there.

Maybe you are looking for