gpt4 book ai didi

java - 在 Mac 上控制 JButtons 的外观

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:04 25 4
gpt4 key购买 nike

对于我的作业,我需要 JFrame 中的网格 JPanel 中的二维 JButton 数组。单击时 JButton 必须改变颜色。我无法让它们保持任何颜色。

我实现了 previous thread 中提出的解决方案并发现变通方法只产生了边框颜色:

JButton button = new JButton("test");
button.setBackground(Color.RED);
button.setOpaque(true);

取消绘制边框:

button.setBorderPainted(false);

只是导致整个 JFrame 变成红色。

此问题仅与 MAC 计算机有关,而不是分配的预期问题。

有什么想法吗?

最佳答案

请记住:Swing 工具包非常擅长使系统的外观和感觉“几乎正确”。但是,如果您真的需要系统感,还有其他选项(例如 SWT)更适合。

如果你想要一致性,那么 Swing 总是可以默认为老式的 applet 外观,虽然有点无聊,但非常可靠。这样做的好处是,当我们回滚到这个更多看起来简单的 gui 工具包,平台特定的怪癖似乎神奇地消失了。

我想您可能会发现您的问题很容易解决如果您简单地将外观设置为标准的 Swing 风格外观。

解决方案

我建议调用

    UIManager.setLookAndFeel(
UIManager.getCrossPlatformLookAndFeelClassName());

在您初始化应用程序的静态代码块中。

关于java - 在 Mac 上控制 JButtons 的外观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8221976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com