java - पारदर्शी, क्लिक-थ्रू, हमेशा ऊपर जेफ्रेम पर



swing jframe (1)

आपको संभवतः एक jframe की तुलना में एक jva प्रक्रिया करने की आवश्यकता है,
जब जफ्रम फ़ोकस न होने पर कुंजी स्ट्रोक को नहीं पकड़ सकता है, तो आप को ऐसा करने के लिए एकमात्र तरीका यह है कि जब भी आपने इसे खो दिया है, तो आप हर बार जेफ्रेम को फोकस दें, किसी भी अन्य खिड़कियों के खुले खुलने का उपयोग नहीं कर सकते आपको शायद लंगर बदलने की जरूरत है

इसलिए मैं वर्तमान में एक पारदर्शी जेफ्रैम है जिसके माध्यम से आप क्लिक कर सकते हैं, लेकिन मुझे इसकी ज़रूरत है कि वह अन्य सभी खिड़कियों के ऊपर बने रहें।

मान लें कि आपके पास एक ब्राउज़र खुला है, मैं चाहता हूं कि जेफ्राम को इसके ऊपर रहने के लिए, लेकिन कुंजीस्ट्रोक और माउस क्लिक पकड़ने में सक्षम हो।

यहाँ मेरा वर्तमान कोड है

public class TransparentWindow extends JFrame {

private static URL URI;

public TransparentWindow() {
    initComponents();
}

@SuppressWarnings("unchecked")
private void initComponents() {
    setExtendedState(Frame.MAXIMIZED_BOTH);
    setIconImage(Toolkit.getDefaultToolkit().getImage(URI));
    setResizable(false);
    setUndecorated(true);
    setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
    setAlwaysOnTop(true);
    System.setProperty("sun.java2d.noddraw", "true");
    WindowUtils.setWindowTransparent(this, true);
    WindowUtils.setWindowAlpha(this, 0.6f);

    addKeyListener(new KeyListener() {

        @Override
        public void keyPressed(KeyEvent e) {
        }

        @Override
        public void keyReleased(KeyEvent e) {
        }

        @Override
        public void keyTyped(KeyEvent e) {
        }
    });
}

public static void main(String[] args) {
    try {
        URI = new URL("http://i.imgur.com/xtZK0.png");
    } catch (MalformedURLException e) {
        e.printStackTrace();
    }
    new TransparentWindow().setVisible(true);
}
}




jna