你知道如何在windows上獲得透明的jframe嗎?在MacOS我用這些線路如何在Windows上獲得透明jframe?
frame.setUndecorated(true);
frame.setBackground(new Color(1,1,1,1));
看來它不工作在Windows上:(我如何能做到這一點?
MacOS的例子
Windows示例
得到了它我的代碼:
frm_languageSelector = new JFrame();
pnl_buttons = new JPanel();
frm_languageSelector.setUndecorated(true);
frm_languageSelector.setBackground(new Color(0,0,0,0));
frm_languageSelector.setFocusable(true);
frm_languageSelector.setSize(500,100);
frm_languageSelector.setLocationRelativeTo(null);
pnl_buttons.setOpaque(false);
pnl_buttons.setSize(500, 100);
pnl_buttons.setLayout(new GridLayout(1,5));
btn_enUS = new JButton();
btn_enGB = new JButton();
btn_it = new JButton();
btn_fr = new JButton();
btn_de = new JButton();
btn_enUS.setBorderPainted(false);
btn_enGB.setBorderPainted(false);
btn_it.setBorderPainted(false);
btn_fr.setBorderPainted(false);
btn_de.setBorderPainted(false);
btn_enUS.setToolTipText(lang.getWord("pnl_enUS"));
btn_enGB.setToolTipText(lang.getWord("pnl_enGB"));
btn_it.setToolTipText(lang.getWord("pnl_it"));
btn_fr.setToolTipText(lang.getWord("pnl_fr"));
btn_de.setToolTipText(lang.getWord("pnl_de"));
pnl_buttons.add(btn_enUS);
pnl_buttons.add(btn_enGB);
pnl_buttons.add(btn_it);
pnl_buttons.add(btn_fr);
pnl_buttons.add(btn_de);
frm_languageSelector.add(pnl_buttons);
'new Color(1,1,1,1)'是不透明的白色。嘗試'新顏色(1,1,1,0)' – Michael