我正在尝试使用 Eclipse 和 Swing 的窗口构建器。
我使用自定义 JPanel 创建了一个演示计算器项目
DigitBoardView extends JPanel
并使用 for 循环分配键
String[] digits = {"1", ...}
for(String digit : digits){
JButton digButton = new JButton(digit);
add(digButton);
}
第一个问题 - DigitBoardView 设计器没有显示它,尽管常见问题解答说它不会在设计时生成和显示依赖于运行时的 GUI(这没关系),这里没有任何东西依赖于运行时。
即使我在编译时使用明确已知的
for(int i = 0; i < 10; i++)
循环设计器迭代数字也不会边缘
第二个问题 - JFrame设计器确实展示了它!如果我将 JFrame 的内容窗格设置为新的 DigitBoardView,它将在设计时显示...
为什么这么奇怪?是虫子吗?
我应该通过展平循环来绕过它吗?
是不是特别丑?
打败不重复自己的原则的目的?