我想为我想要的JButton运行代码。
我在Internet上搜索此文件,但找不到适用于Swing应用程序的解决方案。
b1.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b2.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b3.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b4.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b5.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b6.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b7.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b8.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
b9.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
我尝试了下面的代码,但无法使用JButton属性
JButton[] buttons = new JButton[];
我宣布
buttons[0] = b1;
buttons[1] = b2;
buttons[2] = b3;
buttons[3] = b4;
buttons[4] = b5;
buttons[5] = b6;
buttons[6] = b7;
buttons[7] = b8;
buttons[8] = b9;
但是这不起作用:
buttons.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
步骤1:创建一个数组,并用按钮填充它。
JButton[] buttons = {b1,b2,b3,b4,b5,b6,b7,b8,b9};
注意:这已经用按钮填充了数组,所以这样的语句:
buttons[0] = b1;
buttons[1] = b2;
buttons[2] = b3;
是多余的。
步骤2:遍历数组
for ( JButton button : buttons ) {
// here you are to call the setFont
}
步骤3:设置字体
for ( JButton button : buttons ) {
button.setFont(new Font("Arial", Font.PLAIN, (h / 25)));
}
如果您不想将按钮保留为字段或结构AND,则按钮位于一个容器中(如果按钮位于其他容器中,则您需要做更多的事情),另一种方法是使用Darryl Burke's SwingUtils class。
所以,让我们看看它会变得多么容易:
for (JButton b : SwingUtils.getDescendantsOfClass(JButton.class, panelWithButtons)) {
b.setFont(new Font("Tahoma",Font.BOLD,14));
}
Voilà! “ panelWithButtons” JPanel中的所有按钮都具有此字体。不保留任何字段,不保留任何数组。