0

在我的程序中,我存储了ArrayList我所有的桌面图标位置。我的问题是,当我单击一个图标时,我的计算机会尝试同时打开所有最后一个程序、文件夹和文件,而我真的只想打开单击的任何内容。我怎样才能在没有启动所有其他程序的错误的情况下打开这个?

public void executeUserProgram(Point cursorPosition)
{
    for (int i = 0; i < icons_.getIcon().size(); i++)
    {
        if (icons_.getIconDimension().get(i).contains(cursorPosition)) 
        {
            try 
            {
                Desktop.getDesktop().open(
                        new File(icons_.getFilePath().get(i)));
            } 
            catch (IOException e) 
            {
                e.printStackTrace();
            }
        }
    }
}
4

1 回答 1

2

找到图标后,您的for循环仍会继续。在or中添加returnorbreak语句。iftry

try{
    Desktop.getDesktop().open(new File(icons_.getFilePath().get(i)));
    break;
}
于 2013-04-13T13:09:58.663 回答