Изменение размера значков панели инструментов

Добрый день

У меня есть базовая панель инструментов, к которой я добавил кнопки ImageIcon. Изображения, однако, отличаются по размеру. Как бы я изменил размеры иконок, чтобы они все были одинакового размера.

super("ToolBar");
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    //creating the icons for the toolbar
    ImageIcon savePic = new ImageIcon("c:/Exercises/unitTwo/Chapter Three/Images/save.png");
    ImageIcon openFilePic = new ImageIcon("c:/Exercises/unitTwo/Chapter Three/Images/open.png");
    ImageIcon printPic = new ImageIcon("c:/Exercises/unitTwo/Chapter Three/Images/print.png");



    //creating buttons with initial text and icons. I.o.w. the buttons for the toolbar are created

    JButton save = new JButton("Save", savePic);
    JButton open = new JButton("Open", openFilePic);
    JButton print = new JButton("Print", printPic);


    JToolBar bar = new JToolBar();
    bar.add(save);
    bar.add(open);

    bar.add(new JToolBar.Separator());
    bar.add(print);

    JTextArea text = new JTextArea(10, 40);


    add(BorderLayout.NORTH, bar);
    add(BorderLayout.CENTER, text);

    pack();
    setVisible(true);

1 ответ

Решение

Набор компонентов фламинго поддерживает значки изменяемого размера, одним из классов поддержки является ImageWrapperResizableIcon. Вы можете попытаться взглянуть на источник, чтобы получить представление о том, как реализовать автоматическое изменение размера значков без необходимости делать это вручную.

В качестве альтернативы, просто создайте измененную версию изображения самостоятельно и создайте ImageIcon используя эту измененную версию.

Другие вопросы по тегам