Using setBounds on JTextFields within JPanel

Hi folks,
I hope someone can help me with this.
Basically the heirarchy of my UI is as follows:
The top level JFrame has a borderlayout. The north contains a couple of JButtons and the center contains a JTabbedPane.
Each tab in the JTabbedPane is borderlayout, with the South having another JTabbedPane, and the Center having a JPanel containing other UI elements.
In one of these JPanels I want to show a schematic of a plant and on top if over textfields in different locations to current values for different sensors. lets call this JPanel schematicPanel
For schematicPanel I have set the layout to OverlayLayout. The bottom layer for the schematicPanel is a JLabel that is the actual schematic of the plant. The next layer of the schematicPanel is a JPanel that contains all the JTextFields. This JPanel is set to be transparent using setOpaque(false)
For the JPanel that contains the JTextFields I have not set a layout. What I want to do is use setBounds, or setLocation to place the JTextFields in the correct locations. Unfortunately those methods have no affect what so ever.
I have no idea what is wrong.
Thanks for any help that anyone can offer
Shabbir
PS. I tried place the JTextFields directly on the schematicPanel but using setAlignmentX and setAlignmentY does not work very well, and is very cumbersome. If there is a way to make it work I am open to suggestions. Thanks.

Firstly, in swing the default layout is BorderLayout.
So when you have not set any layouts the layout is Borderlayout.Now if you want the setBounds(),setLocation() etc methods to take effect for any component the Layout needs to be expicitely set to null.
ThereFore,set the Layout of the JPanel where you want to place JTextFields to null for eg panel.setLayout(null) and then see how the setBounds(),setLocation() etc methods take effect.
Got It!!!
PK

Similar Messages

  • Requesting focus for JTextField inside JPanel

    I have an application with following containment hierarchy.
    JFrame --> JSplitPane --> JPanel.
    JPanel is itself a seperate class in a seperate file. I want to give focus to one of the JTextfields in JPanel, when the JPanel is intially loaded in the JFrame. I believe that I cannot request focus until the JPanel is constructed. I can set the focus from JFrame (which loads JPanel) but I want to do this from JPanel. Is there any technique to request focus from the JPanel itself (preferably during JPanel construction).
    regards,
    Nirvan.

    I believe that I cannot request focus until the JPanel is constructedYou can't request focus until the frame containing the panel is visible. You can use a WindowListener and handle the windowOpened event.

  • Can't get focused a JTextField within a JTable cell

    I have a table and I placed a cell editor with a JText field on it for all cell editing,
    I want to do things when the focus is lost or gained and my app works fine when a cell is double clicked or f2 is pressed, but when a cell is selected (without double clicking) and just begin typing it produces no focus gained event.
    I tried by calling grabFocus method of that jTextField within the overriden prepareEditor method of the JTable but it doesn't get focus (doesn't even gains and loses it :s )
    Does anyone have an idea of how to force this component to grab focus?
    Thanks

    Hai,
    dont add the FocusListener to the EditorComponent.
    Try to use the JTable Functions - like this:
    import javax.swing.event.ChangeEvent;
    import javax.swing.table.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.EventObject;
    import javax.swing.*;
    public class Test extends JFrame
         JTable table;
         JTextArea text;
         JScrollPane scroll;
         JTextField cellTextField;
         Test()
              DefaultTableModel model = new DefaultTableModel();
              cellTextField = new JTextField();
              text = new JTextArea();
              text.setEditable(false);
              scroll = new JScrollPane();
              scroll.setViewportView(text);
              table = new JTable(model){
                   @Override
                   public Component prepareEditor(TableCellEditor editor, int row, int column) {
                        text.append("Better use this to Start Edit!\n");
                        return super.prepareEditor(editor, row, column);
                   @Override
                   public void editingStopped(ChangeEvent e) {
                        text.append("Better use this to Stop Edit!\n");
                        super.editingStopped(e);
              model.addColumn("Column 1");
              model.addColumn("Column 2");          
              model.addRow(new String [] {"Cell 1", "Cell 2"});
              table.setCellSelectionEnabled( true );
              table.getColumnModel().getColumn(0).setCellEditor( new DefaultCellEditor(cellTextField));
              table.getColumnModel().getColumn(1).setCellEditor( new DefaultCellEditor(cellTextField));
              getContentPane().setLayout(new BorderLayout());
              getContentPane().add(table, BorderLayout.NORTH);
              getContentPane().add(scroll, BorderLayout.CENTER);
              setSize(300, 300);
              setVisible(true);
              setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
         public static void main(String[] args)
              new Test();
    }

  • How can i use RTFEditorKit for JTextField.

    hi all,
    how can i use RTFEditorKit for JTextField.
    thanks in advance
    daya

    Don't cross post. This is a Swing related question and you have already posted in the Swing forum:
    http://forum.java.sun.com/thread.jspa?threadID=619619&tstart=0

  • How do I block this msg from always popping up "iTunes requires Safari 4.0.3 or later to be installed to use the iTunes Store within iTunes. Use Software Update to download and install the latest version of Safari" bc I can't download the latest software?

    How do I block this msg from always popping up "iTunes requires Safari 4.0.3 or later to be installed to use the iTunes Store within iTunes. Use Software Update to download and install the latest version of Safari". I cannot download this software bc my lap top is to old. The msg literally pops up everytime I make any moves on itunes and is VERY annoying.

    I have a 2006 MacBook with an Mac OS X version 10.5.
    In that case, try downloading a Safari 5.0.5 for leopard from the following location:
    http://www.apple.com/safari/download/

  • How to Set and Use a global variable within a session?

    Dear All,
    I'm new to jsp, and would like to ask how to set and use a global variable within a session?
    Thanks in advance.
    Regards,
    Cecil

    With session.setAttribute("name",object) you can store a Attribute in the session object.
    with session.getAttribute("name") you can get it.
    That's it.
    Regards,
    Geri

  • How to use a Webservice (deployableproxy) within a portal component?

    hi,
    i need to know how to use a webservice using a deployable proxy within a portal component?
    i've created the proxies and they work (with servlets).
    i know how to use them in servletes (context lookup, jndi mapping, application references) but i cant find a way to use them in a portal component.. tried the context lookup way but cant figure out which jndi mapping to use.
    any help?
    thanks in advance,
    constantin

    i've found this document:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/43/cb2e29578c0262e10000000a11466f/frameset.htm
    but it doesn't help...
    i should add a privatesharing resource...
    <property name="PrivateSharingReference" value="SAPJ2EE::rh21.de/pca~wsproxy"/>
    which works
    this is my code
    public void doContent(IPortalComponentRequest request,IPortalComponentResponse response) {
       try {
         Context context = new InitialContext();
         WSPhonebook obj = (WSPhonebook) context.lookup("/wsclients/proxies/rh21.de/pca~wsproxy/de.rh21.wsproxy.phonebook.WSPhonebook");
         WSPhonebookViDocument phonebook = (WSPhonebookViDocument) obj.getLogicalPort("Config1Port_Document", WSPhonebookViDocument.class);
    } catch.....
    now the lookup works (i guess, no messages about that anymore), but i catch ClassNotDefFoundError-Exceptions, but the classes are there, i can strg+click them in the editor, they are in the used dc's etc.
    any help? its quite uurgent :/

  • Can I use an event structure within another event structure

    Hi
    Can use an event structure within another event structure?
    Thanks
    Yasamin
    Solved!
    Go to Solution.

    I attached my Vi from my old project (MY OLD VI). It is worked correctly.
    But I decided that use event structure instead of case structure.
    I attached my new VI as a picture and as a LabVIEW VI too (network_analyzer_8510_920527 Frequency Sweep.vi )
    My graphs show by pressing "case 5: button (Bottom of page right hand).
    Then I want to show each of graph in a large window( in a new VI) by clicking a key (for example "show 1").
    Thanks
    Yasamin
    Attachments:
    my VI.JPG ‏256 KB
    network_analyzer_8510_920527 Frequency Sweep.vi ‏72 KB
    MY OLD VI.vi ‏69 KB

  • How to use Toolkit.getDefaultToolkit().getImage in JPanel in Java Swing

    Hi Sir,
    I want to know how to use Toolkit.getDefaultToolkit.getImage()
    in JPanel (ie) the class that extends the JPanel.There is no problem to include the Toolkit.getDefaultToolkit.getImage()in JFrame.It is displaying it without any problem.But in JPanel it is showing a problem of cannot resolve symbol.Here i can't use JFrame instead of
    JPanel.So how to solve the problem.Pls.do send the code of how to do this.It is Urgent.
    Thanx,
    M.Ananthu

    you use Toolkit.getDefaultToolkit.getImage() in a JPanel exactly the same way you do in a JFrame.
    You are getting a compile message "cannot resolve symbol". You have made a programming error and since you have not included code there is no way to guess what you did wrong.

  • Hello. I have two version of Office for Mac. 2008 and 2001. I want to delete the 2008 version. If I use the removal tool within the Offie 2008 folder, is there any danger of the 2001 version being removed too.  Thanks Dave UK

    Hello. I have two version of Office for Mac. 2008 and 2001. I want to delete the 2008 version. If I use the removal tool within the Offie 2008 folder, is there any danger of the 2001 version being removed too.  Thanks Dave UK

    Do you mean Office 2008 and 2011 or do you really want Office 2001? I think you mean 2011 since Office 2001 wouldn't make much sense.
    The Office uninstaller should be able to identify there are two versions and allow you to delete either one or both.

  • Using Spring JMS DefaultMessageListenerContainer within Oracle CEP

    Hi everyone,
    I need to use a DefaultMessageListenerContainer Spring bean (from spring-jms.jar), have the wlevs bean factory to assemble it (it depends from a POJO) and set it as a property of an Adapter bean.
    How do I do it?
    I tried to put the spring-jms.jar into the xbootclasspath but it depends from spring-core.jar. If i put spring-core.jar into the xbootclasspath, the server dies screaming.
    Documentation says i can use legacy Spring beans within an OCEP application, well how do i do it? Can anyone tell me the right steps to do?

    Thanks for the answer :), i just had to import the appropriate packages into the MANIFEST.MF, put all the classes referring to spring-jms into the bundle and away i went.
    The application starts, listens to the JMS destination (an Oracle AQ queue) and dequeues messages correctly.
    I still have a problem when i try to suspend/uninstall the application from the OCEP visualizer.
    The JMS listener is encapsulated into an OCEP ResumableBean/SuspendableBean. It gets created and started (with a call to DefaultMessageListenerContainer.start()) within the beforeResume() method. I hoped that putting a call to DefaultMessageListenerContainer.shutdown() within the suspend() method would do the trick but... the undeployment hangs for a while, then the following is printed on stdout:
    ####<13-gen-2011 17.09.15 CET> <Error> <org.springframework.osgi.extender.internal.util.concurrent.RunnableTimedExecution> <> <myServer> <[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'> <> <> <> <1294934955875> <BEA-000000> <Closing runnable for context OsgiBundleXmlApplicationContext(bundle=cepcc-adapter-test-aq, config=osgibundle:/META-INF/spring/*.xml) did not finish in 10000ms; consider taking a snapshot and then shutdown the VM in case the thread still hangs>
    ####<13-gen-2011 17.09.15 CET> <Notice> <Deployment> <> <myServer> <[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'> <> <> <> <1294934955895> <BEA-2045001> <The application bundle "cepcc-adapter-test-aq" was undeployed successfully>
    ####<13-gen-2011 17.09.29 CET> <Warning> <Spring> <> <myServer> <Timer-5> <> <> <> <1294934969426> <BEA-2047008> <Exception encountered while stopping application "cepcc-adapter-test-aq": java.lang.IllegalStateException: BundleContext is no longer valid
    java.lang.IllegalStateException: BundleContext is no longer valid
         at org.eclipse.osgi.framework.internal.core.BundleContextImpl.checkValid(BundleContextImpl.java:1047)
         at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:694)
         at org.springframework.osgi.service.importer.support.internal.support.ServiceWrapper.getService(ServiceWrapper.java:99)
         at org.springframework.osgi.service.importer.support.internal.aop.ServiceDynamicInterceptor$ServiceLookUpCallback.doWithRetry(ServiceDynamicInterceptor.java:107)
         at org.springframework.osgi.service.importer.support.internal.support.RetryTemplate.execute(RetryTemplate.java:83)
         at org.springframework.osgi.service.importer.support.internal.aop.ServiceDynamicInterceptor.lookupService(ServiceDynamicInterceptor.java:430)
         at org.springframework.osgi.service.importer.support.internal.aop.ServiceDynamicInterceptor.getTarget(ServiceDynamicInterceptor.java:415)
         at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56)
         at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy371.unregisterMBean(Unknown Source)
         at com.bea.wlevs.spring.MBeanRegistrationBeanPostProcessor.destroy(MBeanRegistrationBeanPostProcessor.java:145)
         at com.bea.wlevs.spring.ApplicationContextLifecycle.onContextClosedEvent(ApplicationContextLifecycle.java:261)
         at com.bea.wlevs.spring.ApplicationContextLifecycle.onApplicationEvent(ApplicationContextLifecycle.java:149)
         at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:78)
         at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
         at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:76)
         at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:274)
         at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:819)
         at org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.doClose(AbstractOsgiBundleApplicationContext.java:197)
         at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$501(AbstractDelegatedExecutionApplicationContext.java:69)
         at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$2.run(AbstractDelegatedExecutionApplicationContext.java:214)
         at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
         at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.normalClose(AbstractDelegatedExecutionApplicationContext.java:210)
         at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.close(DependencyWaiterApplicationContextExecutor.java:379)
         at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.doClose(AbstractDelegatedExecutionApplicationContext.java:236)
         at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:794)
         at org.springframework.osgi.extender.internal.activator.ContextLoaderListener$3.run(ContextLoaderListener.java:807)
         at org.springframework.osgi.extender.internal.util.concurrent.RunnableTimedExecution$MonitoredRunnable.run(RunnableTimedExecution.java:60)
         at org.springframework.scheduling.timer.DelegatingTimerTask.run(DelegatingTimerTask.java:66)
         at java.util.TimerThread.mainLoop(Timer.java:512)
         at java.util.TimerThread.run(Timer.java:462)
    >
    I also tried a call to DefaultMessageListenerContainer.setTaskExecutor passing it an anonymous class like this:
    container.setTaskExecutor(new TaskExecutor() {
    @Override
    public void execute(Runnable task) {
    logger.debug("Submitting runnable task");
    executorPool.submit(task);
    where executorPool is an instance field of the OCEP bean initialized like this: executorPool = Executors.newFixedThreadPool(8);
    Anyway the result is the same, when i perform the uninstall from the OCEP visualizer the application is undeployed, but with the same painful message.
    Any hint on what i'm doing wrong?
    Thanks in advance!
    Edited by: javawarrior2003 on 13-gen-2011 17.29

  • 'iTunes requires Safari 4.0.3 or later to use the iTunes store within iTunes'

    In iTunes 10.5 on my Mac OS X 10.5.2, this message keeps popping up;
    "'iTunes requires Safari 4.0.3 or later to use the iTunes store within iTunes"
    This pops up every 5 or so seconds, so its really annoying if im trying to listen to music. There is no 'don't show this message again' option so its really getting on my nerves! The only way to get update Safari is though a software update and I am scared that if I do a software update, my Mac could crash again, like it did the last time and I had to spend €130 to get it fixed!
    My question is:
    1) should I do a software update and
    2) how can I stop this message apart from updating?
    Thanks in advance,
    Hannah.

    I have a 2006 MacBook with an Mac OS X version 10.5.
    In that case, try downloading a Safari 5.0.5 for leopard from the following location:
    http://www.apple.com/safari/download/

  • I use an online application that doesn't work with FF, but I had been able to use an IE plugin within FF and it worked fine. After the last update (3.6.12), it says plugin is not compatable with version. Help?

    I use an online application that doesn't work with FF, but I had been able to use an IE plugin within FF and it worked fine. After the last update (3.6.12), it says plugin is not compatable with version. Help

    go to '''TOOLS '''then '''OPTIONS''' then '''ADVANCED''' then '''NETWORK tab''' then '''SETTINGS tab''' and select the options '''NO PROXY''' click '''OK''' and '''OK '''again in the next screen. With that you have disabled the proxy settings.
    ''if you like to not disable the proxy settings choose'' : '''Auto-detect proxy settings for this network''' (it is in the same session)
    thank you
    Please mark "Solved" the answer that really solve the problem, to help others with a similar problem.

  • Hi, I use two email addresses within one account with gmx.  I created one account with the first email address now. How do I add the second one to this account? Now it looks like this. One account was opened with address A. I receive in this account email

    Hi, I use two email addresses within one account with gmx.
    I created one account with the first email address now. How do I add the second one to this account?
    Now it looks like this.
    One account was opened with address A.
    I receive in this account emails for address A and B.
    But I can only write and answer with address A.

    Hi Rudegar,
    Sorry for my late reply.
    It s not the amount of accounts I'm struggling with.
    When I create now for both email addresses one account, then I receive the same emails two times.
    That is not what I want.
    Because on gmx the two email addresses have the same inbox and outbox.
    E.g. I can login to my gmx account either with email A or B. It doesn't matter.
    Now I want to have the same on my ipad.
    One account with both email addresses.

  • Using two editor instances within JTable

    Hello,
    I'm struggling around using component editors within JTable. E.g. selectAll text on entering a JTextField cell or immediately raising the popup while entering a JComboBox cell.
    In my analysis most of these problems arises due the re-use of the cell editor.
    The event sequence is doing things in the context of the old cell while preparing the editor for the new cell has already been started.
    Because it is the same component and some things are bound deep inside the L&F it seems not easy to handle them properly.
    Just an idea from me is to avoid such problems by working with two instances for the editors in general. This should avoid all problems coming out of overlapping event processing. (To provide each cell with an own component is of course no solution)
    Any comment on such an approach?
    Thanks in advance
    Wolfgang R.

    No, it wasn't the custom JTable extension.
    By entering a cell a popup will be shown for a short moment. This is only by using Windows L&F (not Metal). Within the L&F a togglePopup() is called which may cause this problem.
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Component;
    import java.util.EventObject;
    import javax.swing.DefaultCellEditor;
    import javax.swing.JComboBox;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.UIManager;
    import javax.swing.WindowConstants;
    import javax.swing.table.DefaultTableModel;
    import javax.swing.table.TableCellRenderer;
    public class JTableExt extends JTable {
         public static class ComboBoxEnumRenderer extends JComboBox implements
                   TableCellRenderer {
              public ComboBoxEnumRenderer() {
                   setEditable(false);
                   setBackground(Color.WHITE);
              public Component getTableCellRendererComponent(JTable table, Object value,
                        boolean isSelected, boolean hasFocus, int row, int column) {
                   this.removeAllItems();
                   this.addItem(value);
                   return this;
         public static class ComboBoxEnumEditor extends DefaultCellEditor {
              private static String[] values = null;
              public ComboBoxEnumEditor() {
                   super(new JComboBox());
                   values = new String[50000];
                   for (int i = 0; i < values.length; i++) {
                        values[i] = "row_" + i;
              public Component getTableCellEditorComponent(JTable table, Object value,
                        boolean isSelected, int row, int column) {
                   JComboBox combo = (JComboBox) getComponent();
                   combo.removeAllItems();
                   for (int i = 0; i < values.length; i++) {
                        combo.addItem(values);
                   combo.setSelectedIndex(0);
                   return super.getTableCellEditorComponent(table, value, isSelected, row,
                             column);
         public JTableExt() {
              super();
              init();
         // invoke editor on cell entry
         public void changeSelection(final int row, final int column, boolean toggle,
                   boolean extend) {
              super.changeSelection(row, column, toggle, extend);
              if (editCellAt(row, column))
                   getEditorComponent().requestFocusInWindow();
         private void init() {
              setDefaultEditor(Object.class, new ComboBoxEnumEditor());
              setDefaultRenderer(Object.class, new ComboBoxEnumRenderer());
         private static void setUI() {
              String lnfName = "";
              //lnfName = "com.jgoodies.plaf.plastic.Plastic3DLookAndFeel";
              lnfName = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
              try {
                   UIManager.setLookAndFeel(lnfName);
              } catch (Exception exc) {
         public static void main(String args[]) {
              try {
                   setUI();
                   javax.swing.JFrame frame = new javax.swing.JFrame();
                   frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
                   frame.getContentPane().setLayout(new BorderLayout());
                   final JTableExt demo = new JTableExt();
                   Object[][] data = new Object[30][1];
                   demo.setModel(new DefaultTableModel(data, new String[] { "first column" }));
                   frame.getContentPane().add("Center", new JScrollPane(demo));
                   frame.setSize(600, 600);
                   frame.setVisible(true);
              } catch (Throwable t) {
                   System.exit(0);
    //end

Maybe you are looking for