Я занимаюсь разработкой небольшого приложения для редактирования фотографий и хотел бы, чтобы кнопки JButtons были отключены до тех пор, пока пользователь не загрузит изображение, после чего я хочу, чтобы кнопки стали активными (щелкающими).Я думал добавить логический метод imageFound и метод проверки изображений.Если логическое значение равно false, кнопки отключены, а если оно истинно, они включены (логическое значение установлено в значение true в методе actionPerformed загрузочного изображения).У меня проблема в том, что при запуске приложения кнопки отключены, как и должно быть, но при загрузке изображения они все равно будут отключены.Я не знаю, возможно, я пропускаю какой-либо фрагмент кода, чтобы перепроверить, доступно ли изображение, таким образом, активируя кнопки (во время выполнения ofc).Спасибо за любую помощь.
...BufferedImage effects = null;
boolean bmpFound = false;
public GUI()
{
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.initComponents();
this.bmpChecker();
this.addListeners();
this.setTitle("PicTweak");
this.setSize(900, 600);
this.setVisible(true);
}
...else if(e.getSource() == loadItem)
{
try
{
imagePath = DialogIO.displayOpenDialog();
effects = ImageInOut.loadImage(imagePath);
imageHolder.setIcon(new ImageIcon(effects));
bmpFound = true;
}
....public void bmpChecker()
{
if(bmpFound)
{
grayScale.setEnabled(true);
blur.setEnabled(true);
reset.setEnabled(true);
brightDark.setEnabled(true);
horFlip.setEnabled(true);
verFlip.setEnabled(true);
verHorFlip.setEnabled(true);
}
else
{
grayScale.setEnabled(false);
blur.setEnabled(false);
reset.setEnabled(false);
brightDark.setEnabled(false);
horFlip.setEnabled(false);
verFlip.setEnabled(false);
verHorFlip.setEnabled(false);
}
}