私はあなたができると信じています。私は次のように試みます。
メインを呼び出した後、ループを実行して、関心のあるウィンドウにアクセスする必要があります (別のスレッドで実行できます)。
for(Window window : Window.getWindows()){
if(window != null && window.isVisible() && window instanceof JFrame){
JFrame jFrame = (JFrame)window;
}
}
次に、リフレクションを介して JFrame のフィールドとメソッドにアクセスできます (または、必要に応じて、jFrame.getName() と一部の文字列を比較して、変更するフレームが意図したものであることを指定します)。
たとえば、JTextArea のフォント サイズとスタイルを変更することに関心があるとします。
Field textAreaField = jFrame.getClass().getDeclaredField("textArea");
textAreaField.setAccessible(true);
フィールドへのアクセスを許可し、必要に応じて変更できるようにします。
そこから、実際のオブジェクトが必要になります。
JTextArea textArea = (JTextArea) textAreaField.get(jFrame);
Font font = textArea.getFont();
textArea.setFont(new Font(font.getFontName(), font.getStyle(), 24));
そして、それはあなたのためにちょうどそれをするはずです.