知りたいのですが...フレーム/アプレットの外にコンポーネントスタイルを描画する方法はありますか?OpenGLを使用するアプリケーションを作成していますが、AWTやSwingなどの見栄えの良いGUIが必要です。はい、 NiftyやTWLのようなライブラリがたくさんあることは知っていますが、私は本当にAWT/Swingルックを使用したいと思っています。
ありがとう。(そして私の悪い英語でごめんなさい、私はブラジル人です。)
コンポーネントを表示できない場合でも、画像にレンダリングできます(ただし、サイズを手動で希望のサイズに設定する必要があります)。
c.setSize(c.getPreferredSize());
BufferedImage img = new BufferedImage(c.getWidth(), c.getHeight(),
BufferedImage.TYPE_INT_ARGB);
Graphics2D g = image.createGraphics();
g.setComposite(AlphaComposite.Clear);
g.fillRect(0, 0, c.getWidth(), c.getHeight());
g.setComposite(AlphaComposite.SrcOver);
c.paintComponent(g);
g.dispose();
その後、その画像をOpenGLのテクスチャとして使用できます。
もちろん、これはコンポーネントの全体像を示すだけです。「実際の」スイングコンポーネントのように操作することはできません。