java - JButton背景图像文本

标签 java swing

我使用 btn.setIcon 将图像放置在 JButton 上问题是文本被图像推到右边,我可以看到背景按钮颜色,并且只有文本的第一个字母,即使它们的水平对齐都放在中心(我尝试了所有变体)。

注意:我需要的是完整的背景图像,图像上方有文本。而不仅仅是图标。

我怎样才能做到这一点?

如果您发布代码作为工作示例,我们将能够提供更多帮助。 – 用户2891133

就是这样:

public void placeResizedImage(JBUtton btn){
            URL buttonImage=this.getClass().getResource("/source/woodButton.png");
            BufferedImage bg=null;
            try {
                bg = ImageIO.read(buttonImage);
            } catch (IOException e) {
                System.out.println("Background image does not exist!");
                return null;
            }
            Image imageBuff=bg.getScaledInstance((int)btn.getSize().getWidth(),(int) btn.getSize().getHeight(),
            Image.SCALE_SMOOTH);
            btn.setIcon(new ImageIcon(imageBuff));
        }

最佳答案

JButton button = new JButton( "Centered" );
button.setIcon( new ImageIcon("mong.jpg") );
button.setHorizontalTextPosition(JButton.CENTER);
button.setVerticalTextPosition(JButton.CENTER);

关于java - JButton背景图像文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30383533/

相关文章:

java - 使用 FileInputStream 从相对路径读取文件

java - 如何在 Java8 中强制立即对流进行评估

java - 当该程序显示无法找到或加载主类时,如何使该程序运行?

java - 如何使用JSqlParser向sql添加where条件?

java - Java Swing GUI错误

java - 使 OS X 屏幕 JMenuBar 跨窗口一致工作的最佳方法是什么?

java - 通过单击按钮将文本添加到 jPanel

java - 将元胞自动机数据数组翻转为乐谱(如 WolframTones)

java - 右键单击复制 JTable 的单元格值

java - 如何在 Swing java 中制作 JFrame 模态