我有一个JFrame
,在JFrame
代码中我创建了一个JWindow
,在窗口中我创建了一个JPanel
。在JPanel
上插入背景图像。
JButton btnImage= new JButton("My Button");
Image splashImg = Toolkit.getDefaultToolkit().getImage("images/image1.jpeg");
JPanel pnlSplashWindow= new JPanel(){
public void paint(Graphics g){
g.drawImage(splashImg,0,0,splashImg.getWidth(this),splashImg.getHeight(this),this);
}
};
pnlSplashWindow.setLayout(new BorderLayout());
pnlSplashWindow.add(BorderLayout.SOUTH,btnImage);
JWindo window= new JWindow(this); // this refers to my class which has extended JFrame
window.setContentPane(pnlSplashWindow);
window.setSize(688, 344);
btnImg.setVisible(true);
window.setLocationRelativeTo(this);
我是JWindow
的新手,并提出以下问题:
JWindow
(或JPanel
上的JWindow
)上添加按钮和标签等元素?JFrame
设为此JWindow
的父级?我的意思是JWindow
处于有效状态时,JFrame
不应该是可点击的。
答案 0 :(得分:4)
要添加您应该使用的组件:
pnlSplashWindow.add(btnImage, BorderLayout.SOUTH);
代替。如果您不希望自己的JFrame可点击,则应使用模式 JDialog
,方法是扩展JDialog
而不是JWindow
。
但是如果你想创建一个启动画面,你应该阅读How to create a Splash Screen。