public CustomWindow() {
setSize(500, 500);
setTitle("Jacob Perkins");
JLabel lbl = new JLabel("Hello World!");
add(lbl);
}
する必要があります:
public void CustomWindow() {
setSize(500, 500);
setTitle("Jacob Perkins");
JLabel lbl = new JLabel("Hello World!");
add(lbl);
}
または、void
(何も返さないために)代わりに、返したいデータ型を入力します。メソッドには、メソッドのシグネチャに一致する適切なデータ型を返すステートメントを含めるreturn
必要があります。そうしないと、次のエラーが発生します。
無効なメソッド宣言。必要な返品タイプ
メソッドから値を返すを参照してください。
クラスのコンストラクターを作成しようとしているのでない限りHelloWorldApp
、メソッドにはクラス名を付ける必要があります(クラスのコンストラクターの提供を読んでください)。
public HelloWorldApp() {
setSize(500, 500);
setTitle("Jacob Perkins");
JLabel lbl = new JLabel("Hello World!");
add(lbl);
}
その他の提案
不必要に伸ばさJFrame
ないでください。
setSize
むしろ、正しいものを使用したり、その内容に合ったをLayoutManager
オーバーライドgetPreferredSize
して返すのではなく、呼び出してください。表示するように設定する前に、コンポーネントを追加した後にDimension
呼び出すよりもpack()
。JFrame
ブロックを介してイベントディスパッチスレッドでSwingコンポーネントを作成および操作します。SwingUtilities.invokeLater(Runnable r)
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
//create and show ui here
CustomWindow w = new CustomWindow();
w.setVisible(true);
}
});