删除三个点“...”来自 JButton?

发布于 2024-11-03 12:54:01 字数 106 浏览 2 评论 0原文

嘿,我正在创建一个计算器程序,有一些小按钮,我希望其中一个按钮上有“Ans”,但是每当我使 JButton 小于 50、50 时,它就会显示三个点。 “...”,如何删除这些点并显示给定的正常文本?

Hey, I am creating a calculator program, with some small buttons, I want one of the buttons to have "Ans" on them, but whenever I make the JButton smaller then 50, 50, it will show three dots. "...", how can I remove these dots and show the normal text given?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

债姬 2024-11-10 12:54:02

可能是因为你的按钮边距太大。

试试这个:

myButton.setMargin(new Insets(0, 0, 0, 0));

您还可以关闭边框:

button.setBorder(null);

Probably this because margin of your button is too big.

Try this:

myButton.setMargin(new Insets(0, 0, 0, 0));

You can also turn off border:

button.setBorder(null);
悍妇囚夫 2024-11-10 12:54:02

不要设置按钮的首选大小。使用按钮的首选大小并让布局管理器布局组件。首选尺寸可确保所有文本都能在不同的外观和感觉上正确显示。

Don't set the preferred size of the button. Use the preferred size of the button and let the layout manager layout the components. The preferred size ensures all the text will be displayed properly on different Look and Feels.

栖迟 2024-11-10 12:54:02

此代码试图解释为什么布局和首选尺寸如此重要。重要的部分在于输入/输出。

TestGuiSize.java

import java.awt.*;
import javax.swing.*;

class TestGuiSize {

    public static void addButtonToPanel(JPanel panel, String label) {
        JButton button = new JButton(label);
        button.setMargin(new Insets(1,1,1,1));
        panel.add(button);
    }

    public static void main(String[] args) {
        JPanel p = new JPanel(new GridLayout(4,3,3,3));
        addButtonToPanel(p, "7");
        addButtonToPanel(p, "8");
        addButtonToPanel(p, "9");
        addButtonToPanel(p, "/");

        addButtonToPanel(p, "4");
        addButtonToPanel(p, "5");
        addButtonToPanel(p, "6");
        addButtonToPanel(p, "*");

        addButtonToPanel(p, "1");
        addButtonToPanel(p, "2");
        addButtonToPanel(p, "3");
        addButtonToPanel(p, "-");

        addButtonToPanel(p, "0");
        p.add(new JLabel(""));
        addButtonToPanel(p, "Del");
        addButtonToPanel(p, "+");

        Dimension d = p.getPreferredSize();
        System.out.println(
            "Preferred Size: " +
            d.getWidth() +
            "x" +
            d.getHeight());

        JOptionPane.showMessageDialog(null, p);
    }
}

输入/输出

prompt> java TestGuiSize
Preferred Size: 113.0x105.0

prompt>java -Dswing.plaf.metal.controlFont=Dialog-22 TestGuiSize
Preferred Size: 169.0x157.0

prompt>java -Dswing.defaultlaf=com.sun.java.swing.plaf.windows.WindowsLookAndFeel TestGuiSize
Preferred Size: 93.0x93.0

prompt>java -Dswing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel TestGuiSize
Preferred Size: 205.0x129.0

prompt> 

运行时参数只是运行之间差异的冰山一角,这些差异可能会影响应用程序的 GUI 代码。布局旨在处理此类差异。

This code attempts to explain why layouts and preferred sizes are so important. The important part lies in the input/output.

TestGuiSize.java

import java.awt.*;
import javax.swing.*;

class TestGuiSize {

    public static void addButtonToPanel(JPanel panel, String label) {
        JButton button = new JButton(label);
        button.setMargin(new Insets(1,1,1,1));
        panel.add(button);
    }

    public static void main(String[] args) {
        JPanel p = new JPanel(new GridLayout(4,3,3,3));
        addButtonToPanel(p, "7");
        addButtonToPanel(p, "8");
        addButtonToPanel(p, "9");
        addButtonToPanel(p, "/");

        addButtonToPanel(p, "4");
        addButtonToPanel(p, "5");
        addButtonToPanel(p, "6");
        addButtonToPanel(p, "*");

        addButtonToPanel(p, "1");
        addButtonToPanel(p, "2");
        addButtonToPanel(p, "3");
        addButtonToPanel(p, "-");

        addButtonToPanel(p, "0");
        p.add(new JLabel(""));
        addButtonToPanel(p, "Del");
        addButtonToPanel(p, "+");

        Dimension d = p.getPreferredSize();
        System.out.println(
            "Preferred Size: " +
            d.getWidth() +
            "x" +
            d.getHeight());

        JOptionPane.showMessageDialog(null, p);
    }
}

Input/output

prompt> java TestGuiSize
Preferred Size: 113.0x105.0

prompt>java -Dswing.plaf.metal.controlFont=Dialog-22 TestGuiSize
Preferred Size: 169.0x157.0

prompt>java -Dswing.defaultlaf=com.sun.java.swing.plaf.windows.WindowsLookAndFeel TestGuiSize
Preferred Size: 93.0x93.0

prompt>java -Dswing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel TestGuiSize
Preferred Size: 205.0x129.0

prompt> 

Run-time parameters are just the tip of the iceberg of the differences between runs that might sink an application's GUI code. Layouts are designed to handle such differences.

故事未完 2024-11-10 12:54:02

您可以更改按钮上的字体大小。请参阅以下链接:

设置字体大小

增加字体大小(可以轻松更改为减小字体大小)

You could change the size of the font on the button. See these links:

Setting font size

Increasing font size (Can be easily changed to decrease font size)

淡忘如思 2024-11-10 12:54:02

使用 setMargin(Insets m) 调整 JButton 边框和标签之间的间距。默认值为 (2, 14, 2, 14)。为了最大化标签的可用空间(并完全删除点),您可以使用类似的东西

myButton.setFont(new Font("Tahoma", Font.BOLD, 11));
myButton.setMargin(new Insets(0, -1, 0, -20));
myButton.setHorizontalAlignment(SwingConstants.LEFT);

Use setMargin(Insets m) to adjust the space between the JButton border and the label. The default is (2, 14, 2, 14). To maximize the space available for the label (and to remove the dots completely) you can use something like

myButton.setFont(new Font("Tahoma", Font.BOLD, 11));
myButton.setMargin(new Insets(0, -1, 0, -20));
myButton.setHorizontalAlignment(SwingConstants.LEFT);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文