通过循环创建多个按钮

时间:2021-07-29 17:10:59

标签: java loops swing jframe jbutton

我正在尝试创建与文件夹中文件数量相等的一定数量的按钮。我很确定这是通过 for 循环完成的,尽管我不知道如何设置每个按钮的唯一位置,因为我无法设置保存位置,否则它只会在同一位置有许多按钮。因为文件夹中可能有很多文件,所以对每个数字使用 if 语句是行不通的,而且是一个乏味的过程。 for 循环会在每次迭代中创建一个新按钮吗?如果是这样,我如何以不同的方式设置每个位置?有没有其他方法可以做到这一点?我知道如何创建一个按钮,但我不知道如何设置每个按钮的唯一位置。 (最好是 y 部分)

for (int i = 0; i <= numberOfFiles; i++) {
    // Create new button?

}

我希望在文件夹中创建与一定数量的文件相同数量的按钮。

1 个答案:

答案 0 :(得分:2)

是的,你没看错。在您的 for 循环内实例化您的新按钮并将新按钮添加到您的用户界面。见this related Question

for ( int i = 0; i <= numberOfFiles; i++ ) 
{
    JButton button = new JButton( "whatever" );
    myUi.add( button ) ;
}

如果您不需要计数,则编写该循环的较短方法:

for ( File file : files ) 
{
    JButton button = new JButton( "whatever" );
    myUi.add( button ) ;
}