jLabel setVisible(true) Doesn't Work

C

clusardi2k

From: "clusardi2k" <clusardi2k@1:261/38.remove-k2r-this>

From: "clusardi2k" <clusardi2k@1:261/38.remove-qhs-this>

From: (e-mail address removed)

I apologize for the simple question, but how do the label setVisible properly.

(1) I dragged a jLabel to my form. I then set it like so:

my_jLabel.setVisible (false);

Later in the project, I set its visibility to true:

my_jLabel.setVisible (true);

But, the label is no where to be found. That's my problem.

(2)FYI: If I do the following after setting it to true, I do see the label:

JOptionPane.showMessageDialog(null,"Is the jLable visible");

(3) Instead of using the show method, doing the following after setting the
label visibility to true did not help.

my_jLabel.repaint();
my_jLabel.validate();

(4) Replacing the showMessageDialog with a sleep did not help.

(5) Replacing the above setVisible in (1) with the following code did not help:

SwingUtilities.invokeLater(new Runnable() { //The EDT (Event Dispatch Thread)
public void run()
{
JLabel myLabel = new JLabel("Old Text");
my_jLabel.setVisible (true);
}
});

(6) Using google to search for an answer isn't helping.

Thanks,

-+- BBBS/Li6 v4.10 Dada-1
+ Origin: Prism bbs (1:261/38)
-+- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

-+- BBBS/Li6 v4.10 Dada-1
+ Origin: Prism bbs (1:261/38)
-+- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24
 
J

John B. Matthews

To: clusardi2k
From: "John B. Matthews" <john.b..matthews@1:261/38.remove-k2r-this>

To: clusardi2k
From: "John B. Matthews" <john.b..matthews@1:261/38.remove-qhs-this>

To: clusardi2k
From: "John B. Matthews" <[email protected]>

(3) Instead of using the show method, doing the following after
setting the label visibility to true did not help.

my_jLabel.repaint();
my_jLabel.validate();

Using validate() is appropriate if you add or remove components or change the
Container's layout, as shown here [1]. When required, repaint() should be
invoked _after_ validate(). CardLayout, shown here [2], is often a better
alternative.

[1] <http://stackoverflow.com/a/5751044/230513> [2]
<http://stackoverflow.com/a/5655843/230513>

--
John B. Matthews
trashgod at gmail dot com
<http://sites.google.com/site/drjohnbmatthews>

-+- BBBS/Li6 v4.10 Dada-1
+ Origin: Prism bbs (1:261/38)
-+- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

-+- BBBS/Li6 v4.10 Dada-1
+ Origin: Prism bbs (1:261/38)
-+- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,770
Messages
2,569,586
Members
45,089
Latest member
Ketologenic

Latest Threads

Top