Macintosh上的Swing GUI问题

时间:2008-10-28 11:03:36

标签: java macos swing netbeans

我是Swing的新手。

是否有与在Mac上自定义绘画操作相关的特定问题?

我在Windows上使用NetBeans + Swing开发了一个示例应用程序。它工作正常。但是,如果我在Mac上运行相同的应用程序,则屏幕上不会显示面板的“按钮”标签。只有当对特定组件执行鼠标悬停操作时,它才会显示在屏幕上。

请有人帮我解决这个问题吗?

提前致谢。 sakkiharry

1 个答案:

答案 0 :(得分:1)

由于Swing描绘了所有UI本身,因此它并未真正受到Mac OS的影响。但也有例外。如果您允许Java使用本机菜单,则该菜单的行为与任何其他Swing菜单一样,但实际上它已转换为本机菜单功能(因此它将显示在屏幕顶部,其行为类似于本机Mac OS X菜单。 ..你作为程序员需要关心的事情,但对Mac用户来说很好,他们讨厌菜单出现在其他地方。)

我猜你的问题可能是其他问题,但如果我没有代码可以使用,那很难猜到。你能否将这个问题分解成一个极小的测试用例?例如。你可以只绘制一个JFrame,在那里添加一个自定义按钮,显示有问题的行为,并使用尽可能多的代码来绘制这个最小的UI并暴露问题吗?如果您在这里发布此代码,我会仔细研究它并尝试找出导致问题的原因以及如何解决它(我是一名毕业的Java程序员,但我也有多年的Mac OS X开发经验;所以这些是我应该非常了解的两个知识领域,但我通常不会将它们组合在一起,因为我没有使用Java for Mac OS X开发。)