質問

私はJFrameのを持っています。このJFrameのは、JButtonのが含まれています。私のJButtonをクリックして、10件のJTextFieldが作成されます。

問題: ウィンドウのサイズを変更することで、「私は()再描画を強制する」まで、私は彼らを見ることができません。そうして私が作成したのJTextFieldを参照ください。

CODEます:

JPanel points = new JPanel();

//Creating the JTextFields:
for (int i=0; i<10; i++) {
    JTextField textField = new JTextField();
    points.add(textField);
}

repaint();
this.repaint();
super.repaint();
points.repaint();
<時間> ループのために、私はちょうどと呼ばれるpoints.validate(後)、それが働いていた...

-

ありがとうございました

役に立ちましたか?

解決

Container.add のAPIドキュメントsayethます:

  

注:コンポーネントが追加されている場合   表示されたコンテナ、   その上で呼び出さなければなりません検証   新しいを表示するために、コンテナ   成分。複数のコンポーネントがある場合   追加されて、あなたが改善することができます   唯一の検証を呼び出すことによって、効率   一度、すべてのコンポーネントが持っていた後、   追加されます。

それはあいまいではなく非常に賢いのですが、それはルールです。それはJComponent.revalidateを呼び出すために良いかもしれ

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top