有没有办法JButton用你自己的按钮图形创建一个而不仅仅是按钮内的图像?
如果没有,是否有另一种方法JButton在java中创建自定义?
我想在Java中使用图像作为按钮,我试图这样做:
BufferedImage buttonIcon = ImageIO.read(new File("buttonIconPath"));
button = new JButton(new ImageIcon(buttonIcon));
Run Code Online (Sandbox Code Playgroud)
但这仍然显示图像背后的实际按钮,我只想将图像作为按钮,我该怎么做?
我正在尝试将图像添加到JButton,我不确定我缺少什么.当我运行以下代码时,该按钮看起来与我创建它时没有任何图像属性完全相同.Water.bmp位于我的项目文件夹的根目录中.
ImageIcon water = new ImageIcon("water.bmp");
JButton button = new JButton(water);
frame.add(button);
Run Code Online (Sandbox Code Playgroud) 是否可以使JButton透明(包括边框)而不是文本?我扩展了swing的JButton并覆盖了这个:
@Override
public void paint(Graphics g) {
Graphics2D g2 = (Graphics2D) g.create();
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0));
super.paint(g2);
g2.dispose();
}
Run Code Online (Sandbox Code Playgroud)
但它使一切都透明,包括文本.谢谢.
我在一BoxLayout组中有四个按钮.这只是两个样本,因为它都是重复的代码.我想在每个按钮之间创建一个小空间,这样它们就不会相互碰撞.我几乎尝试了所有方法,但.add(Box.Create....)没有任何效果.
enter.add(Box.createVerticalGlue());
enter.add(Box.createHorizontalGlue());
//enter.add(new JSeparator(SwingConstants.HORIZONTAL));
JButton float = new JButton("LOWER");
float.add(Box.createVerticalGlue());
float.add(Box.createHorizontalGlue());
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个具有自定义形状(六边形)的按钮,但其他方式就像普通的JButton一样(也就是说,与ActionListener一起使用).
我创建了一个扩展AbstractButton的类,但是当我单击它时它似乎没有向ActionListener发送事件.如果我更改类以扩展JButton它可以很好地工作,但它会搞砸按钮的显示方式.我假设有一个方法需要覆盖以使其触发事件,但我无法弄清楚它是什么.
我想在我的应用程序中创建一个工具栏.如果单击该工具栏上的按钮,它将弹出一个菜单,就像在Eclipse的工具栏中一样.我不知道如何在Swing中这样做.有谁可以帮助我吗?我试过谷歌,但一无所获.
我正在创建一个包含特定ImageIcon的JButton.主要问题是原始图标大小比按钮大小大得多.结果显示按钮时,只能看到部分图标.为了使它适合JButton,"调整大小"ImageIcon的方法是什么?
例如,我有一个带有首选项按钮的窗口.我希望这样做,以便当用户按下首选项按钮并检查他/她的相应选项并按确定时,它会保存首选项,然后当用户按下主窗口上的运行时,它会根据首选项的优先级运行窗口.
先感谢您.