Java低速GUI Swing 10 (492レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
94
(3): 2012/03/02(金)14:18 AAS
あるウインドウAのメニューからそのウインドウの設定パネルBを出して、ウインドウAの位置や
大きさの現在値を表示したいのですが、設定パネルBを生成するのがウインドウAのコンストラクタ内
(Aの部品のメニューにaddActionListener()を設定して,その中でnew ActionListener(),
さらにその中でactionPerformed(ActionEvent)として,その中で new B() を呼ぶ)
なので,Aへの参照をBのコンストラクタに引数で渡して B(A instanceOfA) のようにしても
instanceOfAには常にnullしか入っていません。(つまりAのコンストラクタが完了して完全にAを
生成した状態になる前の時点でB(A)を呼び出してしまっているのだと思います)
こういうときSwingではどういうふうにするのが常套手段なんでしょうか?
Aのコンストラクタ内以外でBのデータを更新して表示する方法があるのかわかりません。
お教えいただきたくお願いします。
111
(2): 94 2012/03/06(火)14:09 AAS
AA省
114: 94 2012/03/06(火)16:20 AAS
>>113
なるほど FrameA の中で PanelB を定義すれば FrameA.this が見えるわけですね。
なお >>111に示したコードの前半もほんとうは>>113のように FrameA の
コンストラクタ内にあったんですが貼り付けるときに削除してしまっていました。
Swing も内部クラスも使ったことがなかったので勉強になります。ただ、PanelB の
コードは FrameA から独立させて書いておきたいので、Swing のマナー違反でない
限り >>111のような引数渡しの方法を使おうと思っています。どうもありがとうございました。
116: 94 2012/03/06(火)17:45 AAS
>>115
いちいちframeAに代入したりしないで直接FrameA.thisを渡すということですね。
>>111 よりスマートだしいけそうですね。どうもありがとうございます。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.018s