AWTコンポーネント(サードパーティライブラリ)があり、その上に半透明のパネル(この場合はアルファベットの128)を表示してマスクする必要があります。これを行う方法はありますか?私はSunのAWTUtilitiesクラスを使用する "TransparentPanel"クラスを見てきましたが、それは0 <アルファベット< 255のピクセルを表示できないという制限があります。それがかなり解決策ではないとしても、これを行う。AWTコンポーネントの半透明パネル
2
A
答えて
1
おそらく、半透明塗料を備えたGlassPaneでこれを解決できます。ここに簡単な例があります:
import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Paint;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GlassFrame extends JComponent
{
public GlassFrame()
{
super();
}
@Override
protected void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D)g.create();
Paint p = new GradientPaint(
0, 0, new Color(200,180,180,200), //Select RGB and Alpha values
getWidth(), 0, new Color(0,0,0,0)
);
g2.setPaint(p);
g2.fillRect(0, 0, getWidth(), getHeight());
g2.dispose();
}
public static void main(String args[])
{
JFrame jf = new JFrame("Simple test");
jf.add(new JPanel());
GlassFrame g = new GlassFrame();
jf.setSize(300,300);
jf.setVisible(true);
jf.setGlassPane(g);
g.setVisible(true);
}
}
+0
残念ながら、私はAWTコンポーネントを下に持っているので、これはうまくいきません私が使用しているサードパーティのライブラリのためです)。 –
0
私が知る限り、これはできません。近づくと、スイングコンポーネントが上に表示されている間にAWTコンポーネントのスクリーンキャプチャを作成し、最終的にスクリーンキャプチャをリフレッシュします。つまり、ネイティブコンポーネントは実際には存在せず、画面キャプチャモード(マウスのクリックやキーイベントに応答しない)では使用できません。
これは、DJ NativeSwingの例の1つで、埋め込みWebブラウザの上にアルファ透明度を持つSwing PNG画像をオーバーレイするものです。デモを確認してください:http://djproject.sourceforge.net/ns
関連する問題
- 1. 半透明ウィザードフォーム
- 2. 半透明のカーソル
- 3. Java AWTコンポーネントとパネルのパディング/ボーダー
- 4. WPF - 半透明アプリケーション
- 5. 半透明のフィギュア(pdflatexを)
- 6. Googleマップの半透明MarkerImage
- 7. 半透明のjqueryメニュー
- 8. ActionScript 3.0シェイプの半透明?
- 9. フォーム内の半透明の子フォーム(またはその他の半透明レイヤー)
- 10. パネル上のJava透明パネルとカスタムエフェクト
- 11. GDIオブジェクトHBRUSH半透明
- 12. イメージを不透明から半透明にアニメーション化する(そして半透明に保つ)
- 13. Firemonkey半透明のImage3Dが時々不透明です
- 14. LinearLayout半透明(しかし透明ではない)
- 15. ドラッグイメージを半透明でなく不透明にする
- 16. 半透明のドット上の追加カラー
- 17. CALayerの影と半透明のUINavigationBars
- 18. 半透明の画像のボーダー
- 19. QT半透明のウィンドウとリモートデスクトップ
- 20. ポップアップウィンドウのような半透明なアクティビティ
- 21. 半透明のJFrameボーダーJDK 7
- 22. 半透明モデル内のOpenGL(ES)モデル
- 23. UIToolbar半透明スタイルと特定のUIBarButtonSystemItems
- 24. 透明なJavaウィンドウ上の不透明なコンポーネント
- 25. 透明パネルのグラフィックスをクリアするC#
- 26. UINavigationBarを半透明にします
- 27. PyQt5:不透明な子を持つ半透明のウィンドウを作成する
- 28. スウィング:別のパネル上に透明パネルが表示される
- 29. 半透明で完全に透明なWindowsフォームを使用できますか?
- 30. PHP GDでの半透明画像のリフレクション
試したTransparentPanelクラスへのリンクを投稿できますか? – finnw
http://today.java.net/article/2009/11/02/transparent-panel-mixing-heavyweight-and-lightweight-components –