Re: Setting an icon on a
To: comp.lang.java.gui
dushkin wrote:
Hello there,
Please review the following code segment....
/*************************************************************/
public class IMIEasternButtonPanel extends JPanel {
private BoxLayout bl = new BoxLayout(this, BoxLayout.LINE_AXIS);
private JButton m_btnUp, m_btnDown;
public IMIEasternButtonPanel(){
setLayout(bl);
setPreferredSize(new Dimension(500,50));
addChilds();
}
public void addChilds(){
boolean b = FilesUtils.isFileExists("up.gif"); //b = true !!!
Icon upIcon = null;
upIcon = new ImageIcon("up.gif");
m_btnUp = new JButton();
m_btnUp.setIcon(upIcon);
m_btnUp.setSize(50, 50);
add(m_btnUp);
/*******************************************************/
Why can't I see the icon on the up button??? Moreover, the button does
not seems to get the correct size as I had set. It is more like a
oblong than a 50X50 square...
Many thanks!
You could use a simple JPanel instead of extendint it.
What's the point in extendint it?
Try this:
-------------------------------------------------------------------------------------
import javax.swing.*;
import java.awt.*;
public class IMIEasternButtonPanel extends JPanel {
private JButton m_btnUp, m_btnDown;
public IMIEasternButtonPanel(){
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
setPreferredSize(new Dimension(500,50));
addChilds();
}
public void addChilds(){
m_btnUp = new JButton(new ImageIcon("up.gif"));
m_btnUp.setMinimumSize(new Dimension(50, 50));
m_btnUp.setMaximumSize(new Dimension(50, 50));
m_btnUp.setPreferredSize(new Dimension(50, 50));
add(m_btnUp);
}
public static void main(String[] args){
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
IMIEasternButtonPanel iebp = new IMIEasternButtonPanel();
frame.getContentPane().add(iebp, BorderLayout.EAST);
frame.setSize(500, 500);
frame.setVisible(true);
}
}
---
* Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet!
--- Synchronet 3.15a-Win32 NewsLink 1.92
Time Warp of the Future BBS - telnet://time.synchro.net:24