我的应用具有一个Jwindow,当自定义最小化按钮单击时,需要最小化。如果有人知道如何最大程度地减少jwindow,请回复。我搜索了很多,但找不到任何合适的方法来最小化。我知道如何最大程度地减少jframe。因此,请不要理会有关Jframe的回答。谢谢。
我知道您不想听到这个消息,但是可怕的事实是,未装修Jframes(带有SetState方法)和Jwindows之间没有很大的区别...:)P>
JFrame f = new JFrame("Frame");
f.setUndecorated(true);
由于jwindow未用任何控制图标装饰,因此没有提供setState
方法。一个解决方法是允许您的自定义最小化按钮设置可见的窗口:
public class JWindowTest extends JFrame {
JWindow window = new JWindow();
JButton maxMinButton = new JButton("Minimize Window");
public JWindowTest() {
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
maxMinButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (window.isVisible()) {
maxMinButton.setText("Restore Window");
} else {
maxMinButton.setText("Minimize Window");
}
window.setVisible(!window.isVisible());
}
});
add(maxMinButton);
window.setBounds(30, 30, 300, 220);
window.setLocationRelativeTo(this);
window.add(new JLabel("Test JWindow", JLabel.CENTER));
window.setVisible(true);
}
public static void main(String[] args) {
new JWindowTest().setVisible(true);
}
}