Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 704
  • Last Modified:

Is there a way to make a jlist transparent?

Hi,

Is there a way to make a jlist transparent?

Thanks
0
taborrg
Asked:
taborrg
  • 3
  • 3
1 Solution
 
for_yanCommented:
Look at this answer to similar quewstion here which worked:



http://www.dreamincode.net/forums/topic/183398-how-to-make-jlist-transparent/


Re: How to make JList transparent?

Posted 27 July 2010 - 10:09 AM
I *THINK* you need to the cell renderer to be transparent too. This may involve making your own custom cell renderer. The API has an example of how to do that. You can probably copy their example and modify it to suit your needs (setting it to non-opaque, of course).
API link:

http://docs.oracle.com/javase/6/docs/api/javax/swing/JList.html
0
 
for_yanCommented:
I guess this is a better link which gives full code of JList drwan
on top of the image using ListCellRenderer:
http://www.javarichclient.com/display-a-jlist-with-a-background-image/
0
 
taborrgAuthor Commented:
I saw the first link earlier, but couldn't make sense of it.

The second link lots like I might be able to follow it.  Will probably take a day.

Thanks
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
for_yanCommented:
about the first link.

This link
http://docs.oracle.com/javase/6/docs/api/javax/swing/JList.html
goves an example of using ListCellRenderer with the list.
The main method of ListCelllRenderer
 public Component getListCellRendererComponent(..)
needs to return a subclass of JComponent - they show how to use
subclass of JLabel to return from this method by creating MyListCellRenderer extending JLabel. Then making JList transparent will be the same as making JLabel's, returned for each cell, transparent, which you should be able to achieve by using setOpaque(false)
in the end where this method returns JLabel, like in this place
 setOpaque(true); // change this to false
         return this;


It looks like the asker in that case tried and was happy with that.
It seems to me it should work either.

Anyway try the second one if that one is closer to what you like to achieve
0
 
taborrgAuthor Commented:
I appreciate the explanation - I'll take another look at it.
0
 
taborrgAuthor Commented:
Thanks for the help.
0

Featured Post

[Webinar] Cloud and Mobile-First Strategy

Maybe you’ve fully adopted the cloud since the beginning. Or maybe you started with on-prem resources but are pursuing a “cloud and mobile first” strategy. Getting to that end state has its challenges. Discover how to build out a 100% cloud and mobile IT strategy in this webinar.

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now