Как автоматически выполнить задачу (с использованием рабочего потока) сразу после отображения (расширения класса) JFrame
, если возможно, поддерживая исходный код для этой задачи в классе, расширяющем JFrame
?Как автоматически выполнить задачу после отображения JFrame изнутри?
Все примеры, которые я нахожу, и как я сам использовал его до сих пор, показывают только расширения GUI-класса с кодом, который реагирует на ввод после запуска и отображения графических интерфейсов с любыми автоматическими дальнейшими действиями за пределами код, который запускается и отображает графический интерфейс; другими словами, что я (делать/не делать) видите, так прокомментировал в примере кода ниже:
public static void main(String args[]) {
//Set the Look and Feel
//...
//Create and display the form
java.awt.EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new MyFrame().setVisible(true); //<--- I never see automatic stuff happening
//...within here (class). I realize it can be done overriding setVisible(), but
//...that would be cheating in regards to the intent of this question.
}
});
//In the examples I found, and the way I have done it myself, automatic
//..."after GUI is displayed" actions, such as a starting a worker that will load
//...something heavy on startup, while the GUI displays a progressar, are started here.
}
Можно ли выполнить задачу, например, вызвав событие, начиная с работника, или иным образом выполнение какого-либо несвязанного фрагмента кода в пределах MyFrame
(любое расширение JFrame
), не делая этого в пределах переопределения setVisible()
или другого метода инициализации компонента (компонентов, который иначе не был бы выполнен)?
И если возможно, как это сделать?
Bonus второстепенный вопрос: Предполагая, что это возможно, есть какая-либо рекомендация о том, где сделать это для GUI-строитель автоматически генерируемого кода Netbeans' или код подобной структуры?