Использование конструктора окон для l oop в Java для создания нескольких кнопок n раз - PullRequest
0 голосов
/ 08 мая 2020

Я хочу создать кнопки n , где n - это количество продуктов, хранящихся в HashMap и считываемых из текстового файла. Каждая кнопка при нажатии будет ссылаться на JFrame, содержащий информацию об этом конкретном продукте.

Я попытался использовать для l oop, например, ниже:

    for(int i = 0; i == products.size(); i++) {
        frame.getContentPane().add(new JButton(product_names[i]));
    }

Где frame - это частный JFrame, а products - это HashMap, определенный private Map<String, String[]> products = new HashMap<String, String[]>(); и заполненный с использованием следующего временного метода (который в будущем будет заполняться из текстового файла):

private void loadProducts() {
    String[] product_info = {"temp","temp","temp","temp","temp","temp","temp","temp"};
    products.put("1", product_info);
    products.put("2", product_info);
    products.put("3", product_info);
}

Такое, что n = 3 , так как есть 3 записи. Однако, когда программа запущена, на фрейме не отображаются кнопки JButton, тогда как для 3 разных продуктов должно быть 3 разные кнопки.

product_names - это просто массив строк, содержащий ключи HashMap. т.е.

private String[] product_names = {"1","2","3"};
...