2009-08-16 9 views
0

C#フォーム内のコンテナにJava JFrameを追加しようとしています。私が持っているJFrameはAppletStubを実装していますが、IKVMを使ってインターオプティミングを行っていますが、問題はAppletStubに読み込まれたアプレットがフリーズすることです。しかし、それは完璧にうまくいきます。これは私がbtwをやっている唯一のことで、JFrameをC#フォームにロードしようとしていて、2つの整数値をJFrameに渡しています。これを行う簡単な解決策があるのか​​どうか教えてください...?C#フォーム内のJframe

また、C#のではなく、その後++これはCにたくさんより容易になりますなら、私に知らせて、私はただのJava行うことができます - > C++ - > C#〜おかげ

答えて

0

UIのスレッドがWinFormsのアイデアと矛盾しているというIKVM/Swingのアイデアに問題があると思われます。間違ったスレッドでWinFormsのUI操作を実行しようとしたコードは通常、 UI。私はIKVM GUI実装の内部を掘り下げて回避することはできませんでした(IKVMでUIを最後に試したとき、このプロジェクトの優先順位ではないことははっきりしていました)。

+0

これはできないと言っています...? –

+0

IKVMの場合はオープンソースのソフトウェアなので、「不可能」という定義はかなり弾力的です。問題を診断するには、おそらくIKVMの内部構造を調べる必要があります。 UIコンポーネントへのすべての呼び出しをUIスレッドに適切なディスパッチでラップすることで十分かもしれませんが、実装の詳細を調べることなく、わかりません。 JFrameをオフスクリーンで保持し、その内容をイメージとしてWinFormにレンダリングし、WinFormでイベントをJFrameに転送するだけで、何かを行うことができます。 –

+0

私はJFrameを画面外に持ち、コンテンツをイメージとしてレンダリングするというあなたの考えが大好きです!どのようにこれが可能であるかに関するアドバイス/提案をお持ちですか? (私はC#とJavaであまり経験がないので、レンダリングされたイメージをキャッシュしてwinformに表示する以外に他の方法を考えることはできません。これを行う唯一の問題はリソースの摂取量とCPU使用量のJFrame内のイメージは常に動いています...)最適な解決策を提案してください:) –

0

うーん、これは少し奇妙です。

多分、関連するC#コントロールの中にHTMLとしてアプレットを置くことができますか?

+0

しかし、それはアプレットではなく、JFrameをアプレットまたは少なくともJAppletにしようとしましたが、AppletStubを使用しようとすると両方のアクセス許可が拒否されます。 –

+0

ああ、アプレットではありません。まあ。それは私が当時考えていなかったものです。ごめんなさい。 –

関連する問題