你知道如何在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