2011-07-12 26 views
8

JFrame nasıl saydam yapılır? JFrame'imi şeffaf hale getirmek istiyorum. Kullanıcı, JFrame cihazımın üstünde olduğunda arka planı görmeli.JFrame nasıl saydam yapılır?

+0

olası yinelenen [Şeffaf JFrame arka plan] (http://stackoverflow.com/questions/2533650/transparent-jframe-background) –

+0

Kolay bir eğitici - https://www.youtube.com/watch?v=zecGJfNHPWo – m4heshd

cevap

9

Kısıtlı API sınıfları kullanma konusunda herhangi bir itirazınız yoksa, bunu bu sınıfın AWTUtilities sınıfı ve setWindowOpacity() yöntemiyle yapabilirsiniz. Here ve here, nasıl kullanılacağı hakkında bir öğretici mi? Ve here, Java yerel erişimini kullanan sürümdür.

+0

genel statik geçersiz ana (String args []) { java.awt.EventQueue.invo keLater (yeni Çalıştırılabilir() { public void run() { javax.swing.JFrame fr = new NewJFrame(); com.sun.awt.AWTUtilities.setWindowOpacity (fr, 0.7f); fr.setVisible (true); } }); } –

+0

Kodunuzu yanıt olarak gönderebilirsiniz. –

+0

Bunu yapmak istemedim çünkü sadece cevabınızı artırmanız gerekiyor ... Yorumda kodu nasıl biçimlendireceğinizi bilmiyorsunuz. –

11

Başka bir çözüm buldum.

// Set the frame background color to a transparent color 
yourFrameHere.setBackground(new Color(0, 0, 0, 0)); 

için çerçevenin arka plan rengini ayarlayın Ve ContentPane kapalı saydamlığını ayarlamak için (sizin Jpanel veya başka bir bileşen) hatırlamak

// turn off opacity of the content pane 
yourContentPaneHere.setOpaque(false); 
+0

"setOpaque()" yöntemini göremiyorum. – smwikipedia

+0

Soyut sınıf JComponent'in bir metodudur. http://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html#setOpaque(boolean) Yani, her JPanel ve diğer bileşenler bu yönteme sahiptir. – drzymala

+0

Bu en iyisidir. Gitme yolu! – Zizouz212