[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Java3Djp:00201] Re: Java3D とSwing について




山内@電気通信大学です.おそらく記事として出すのは初めてです.よろしく
お願いします.

From: Takashi Ikeda <ikeda@xxxxxxxxxx>
> はじめまして、池田といいます。よろしくおねがいします。
> 
> 開発環境は、JDK1.2 + Java3D1.1 + Windows95 です。
> 
> 現在、Swing上でJava3Dの表示を行っているのですが表示がおかしくなって困っています。
> 具体的には、JDesktopPane上にJava3Dを表示するJInternalFrameをいく枚か表示させる
> アプリケーションなのですが、JInternalFrame同士が重なると重なった部分のフレームの
> 枠が表示されません。また、フレームを移動するとJava3Dのパネルが遅れて移動します。
> これはもしかして、Lightweight ComponentとHeavyweight Component の混在という問題
> なのでしょうか。もしそうだとしたら、回避方法は存在するのでしょうか。
> アドバイスお願いします。
> 参考のためにサンプルコードを添付します。

コードを読んでいないので間違えているかもしれませんが,Heavyweight と 
Lightweight のコンポーネントを混在させてはまったことがあります.

どうやら,Lightweight コンポーネントを書いたのちに,Heavyweight コンポー
ネントが描画されるようです.私の場合には Canvus の上に Swing の menu 
をつけていたら,menu が下の canvus に隠されてしまうということを経験し
ました.

まだ Java3d で何か書いたことがないのですが,Swing ではかなりのコンポー
ネントが Lightweight 化されていますので,全部 Lightweight で書けという
ことのようです.最初は私は Awt の Canvus にしか線などが書けないのかと
思っていたのですが,JComponent に対して描画できることがわかってからは
問題がありません.対応する Lightweight のコンポーネントを探すというの
が良いかもしれません.

---------------------------------------------------------------------
電気通信大学情報システム学研究科分散処理学講座 助手 山内斉
 --E-mail-- yamauchi@xxxxxxxxxx  	    #=[ O ]=# TEL: 0424(43)5638
/_________/ is.uec.ac.jp     [PhonE]  FAX: 0424(43)5681(事務)