Mac 上的 java swing,无法激活组件的 revalidate()

标签 java macos swing jframe

我试图在扩展 JFrame 的类中激活 revalidate 方法,但无法激活。 这是我第一次使用 swing,直到今天我才使用 java 6,因为我无法使用 revalidate,所以我安装了 JDK 1.7.0_21 但仍然无法使用它。 我使用 eclipse,它说“方法 revalidate() 对于 Game 类型未定义”(Game 是我扩展 JFrame 的类)

此外,当我尝试在 Windows 计算机上的代码中完全相同的位置编写 revalidate 时,没问题

我找不到有关此主题的任何内容..

我使用的是 OSX 10.8.3...

任何帮助将不胜感激,谢谢!

最佳答案

JFrame#revalidate (来自java.awt.Component)是在Java 7中添加的。由于Java是跨平台的,JDK和JRE也有这个方法。因此Eclipse很可能仍在使用Java 6。

右键单击该项目,然后单击

  • 属性 > Java 构建路径 > 库
  • 选择 JRE 系统库 (1.6) -> 单击“删除”

然后添加 Java 7 的 JRE

  • 添加库 > JRE 系统库 > 已安装的 JRE
  • 选择 JDK 1.7 > 确定 > 完成

关于Mac 上的 java swing,无法激活组件的 revalidate(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16946479/

相关文章:

ios - 如何在 Mac Catalyst 应用程序中收听按键?

model-view-controller - Swing组件如何实现MVC架构?

Java - 如何在网格布局中平滑地将图像从一个点移动到另一个点?

java - 在 JTable 中使用 setAutoCreateRowSorter 对不同数据类型进行排序

java - 如何使用按钮来回切换语言?

java.sql.SQLException : ORA-00936: missing expression 异常

macos - 为我的 Mac 应用程序创建安装程序

Java LinkedHashMap 替换键

java - 自动为变量生成某些方法

c位运算bug