Re: icon image on JToolBa
To: comp.lang.java.gui
jr wrote:
Hi, I'm working on an application that uses a toolbar. I have written
the code below. My problem is that the icons that I'm using are of
different sizes that's why the the toolbar doesn't look so good. Is
there a way to make the buttons of the same sizes? Thanks..
Here is a good link even though it is rather dated:
http://java.sun.com/products/jlf/ed2/guidelines.html
If you look at the resources here you will find a set of icons.
Any icons for use in GUI application will have a standard look&feel with
fixed sizes. Using the same sized images will ensure your buttons are
the same size.
The preferred way to really do this is by creating an action and then
binding it to several JComponents.
This is an abstract class I leverage a lot to do just that...
package net.java.dev.tframe.swing.action;
import javax.swing.*;
import net.java.dev.tframe.swing.*;
/**
* This class abstract provides an enforced interface for
* a JButton type of control that can be added to either a JMenu or a
JToolbar.
* The advantage is you create it only once and put it in two places. The
* other advantage is you can disable the control ONLY once and it is
disabled
* in both places at the same time.
*/
public abstract class TAbstractAction extends AbstractAction {
protected TFrame _frame; // main JFrame of the framework
public TAbstractAction(final TActionInfo actionInfo) {
// set reference to main JFrame
_frame = actionInfo._frame;
putValue(DEFAULT, actionInfo._caption);
putValue(NAME, actionInfo._caption);
putValue(SHORT_DESCRIPTION, actionInfo._tooltip);
putValue(LONG_DESCRIPTION, actionInfo._statusBar);
if (actionInfo._image != null) {
putValue(SMALL_ICON, actionInfo._image);
}
if (actionInfo._mnemonic != 0) {
putValue(MNEMONIC_KEY, new Integer(actionInfo._mnemonic));
}
if (actionInfo._hotKey != null) {
putValue(ACCELERATOR_KEY, actionInfo._hotKey);
}
}
public abstract void actionPerformed(java.awt.event.ActionEvent event);
}
---
* 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