Java GUI基础功能代码

事件部分
鼠标、键盘响应
/关于键盘快捷键设置和添加动作监听器
.setMnemonic(‘’);//设置快捷键 通常是单字符

//快捷键+动作监听
.setAccelerator(KeyStroke.getKeyStroke(“F1”));
.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
//this.setVisble(true);
new lookfor();
// TODO 自动生成的方法存根
}
});

//键盘监听
.addKeyListener(new KeyAdapter()//键盘监听按钮
{
public void keyPressed(KeyEvent e)
{
if(e.getKeyCode()==KeyEvent.VK_ESCAPE)
//操作1
//组合键
else if(e.isControlDown()&&e.getKeyCode()==KeyEvent.VK_F1)
//操作2
}
});

信息提示
方法一:
JOptionPane.showMessageDialog(null, “警告”, “密码输入错误”, JOptionPane.ERROR_MESSAGE);
方法二:
MessageBox.Show(“图片上传成功”);

窗口界面部分 窗口居中

Dimension dem=Toolkit.getDefaultToolkit().getScreenSize();
int sHeight=dem.height;
int sWidth=dem.width;
int fHeight=this.getHeight();
int fWidth=this.getWidth();
this.setLocation((sWidth-fWidth)/2, (sHeight-fHeight)/2);
//窗口图标 要设置img包 放入图片
String path=”/img/1.png/”;

try{
Image img =ImageIO.read(this.getClass().getResourceAsStream(path));
this.setIconImage(img);
}catch(Exception e)
{
e.printStackTrace();
}

监听窗口大小
//窗口大小
//添加窗口监听事件
this.addComponentListener(new ComponentAdapter(){
@Override public void componentResized(ComponentEvent e){
// write you code here
//获取当前窗口大小
Dimension d = getSize();
wid=d.width;
hig=d.height;
}});

设置背景图片
//将设置背景图像放在另一个组件类中 能实现伴随窗口变换而变化
JLabel label= new JLabel(“”);
ImageIcon img=new ImageIcon(this.getClass().getResource(“地址”));
//设置照片大小
img.setImage(img.getImage().getScaledInstance(宽,高,Image.SCALE_DEFAULT));
label.setIcon(img);
label.setBounds(0, 0, 695, 467);
getContentPane().add(label_5);
//注意 如果有contentPanel 应该放在contentPanel 而不能直接放在this中
label.setOpaque(false);//把背景设置成透明 不会遮盖其他部件

调用java内置对话框选取系统文件
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
JFileChooser jfc=new JFileChooser();
jfc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES );
jfc.showDialog(new JLabel(), “选择”);
File file=jfc.getSelectedFile();
if(file.isDirectory()){
System.out.println(“文件夹:”+file.getAbsolutePath());
}else if(file.isFile()){
System.out.println(“文件:”+file.getAbsolutePath());
}
System.out.println(jfc.getSelectedFile().getName());
}

猜你喜欢

转载自blog.csdn.net/weixin_40990818/article/details/81636361