Java实现桌面效果 java软件Swing界面 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Java有关窗口最小化和还原的代码 (2012-05-25 08:27:46)转载▼标签: java 窗体最小化还原 swing it 分类: javapublic class LCD_FrameHide extends JFrame implements Runnable,MouseListener{ private int xx;//窗口左上角x坐标 private int yy;//窗口左上角y坐标 private int cdheight=100;//窗口的高 private int cdwidth=100;//窗口的宽 private int hidepeer=10;//窗口隐藏的速度,单位为像素 //Thread hidethread;//窗口的隐藏或显示线程 PopupMenu cdpop1,cdpop2;//弹出菜单 MenuItem cdmenu1,cdmenu2,cdmenu3,cdmenu4,cdmenu5;//弹出菜单项 SystemTray cdtray=null;//托盘实例 TrayIcon cdicon=null;//托盘图标 ImageIcon cdimage;//图片 LCD_FrameHide(){ super(“类似于迅雷的浮动小小提示窗口”); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(cdwidth,cdheight); cdimage=new ImageIcon(“lcd.jpg”); cdpop1=new PopupMenu(); cdmenu1=new MenuItem(“关于”); cdmenu2=new MenuItem(“退出”); cdmenu3=new MenuItem(“最小化”); cdmenu4=new MenuItem(“最小化并放到托盘”); cdmenu5=new MenuItem(“还原”); cdpop2=new PopupMenu(); cdicon=new TrayIcon(cdimage.getImage(),”LCD的窗口隐藏测试”,cdpop2); cdmenu1.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ JOptionPane.showMessageDialog(null,”我用来测试隐藏功能的”); } }); cdmenu2.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ System.exit(0); } }); cdmenu3.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ setState(Frame.ICONIFIED); } }); cdmenu4.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ if(SystemTray.isSupported()){ cdtray=SystemTray.getSystemTray(); try{ cdtray.add(cdicon); dispose(); } catch(AWTException ex){ JOptionPane.showMessageDialog(null,”当前系统不支持系统托盘实例!出错信息:”+ex.toString()); } cdicon.addMouseListener(new MouseListener(){ public void mouseClicked(MouseEvent e){ if((e.getModifiers()&InputEvent.BUTTON3_MASK)!=0){ cdpop2.add(cdmenu1); cdpop2.add(cdmenu5); cdpop2.add(cdmenu2); cdpop2.show(null,e.getX(),e.getY()); } } public void mouseExited(MouseEvent e){} public void mousePressed(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseReleased(MouseEvent e){} }); dispose(); } } }); cdmenu5.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ setVisible(true); cdtray.remove(cdicon); } }); cdpop1.add(cdmenu3); cdpop1.add(cdmenu4); cdpop1.add(cdmenu1); cdpop1.add(cdmenu2); add(cdpop1); addMouseListener(this); setLocationRelativeTo(null); setUndecorated(true); setVisible(true); } public void mouseExited(MouseEvent e){} public void mouseReleased(MouseEvent e){ setVisible(false); setLocation((int)(e.getX()-xx+getLocation().getX()),(int)(e.getY()-yy+getLocation().getY())); setVisible(true); } public void mouseEntered(MouseEvent e){} public void mouseClicked(MouseEvent e){ } public void mousePressed(MouseEvent e){ xx=e.getX(); yy=e.getY(); if((e.getModifiers()&InputEvent.BUTTON3_MASK)!=0){ cdpop1.show(this,e.getX(),e.getY()); //在指定位置显示右键弹出菜单 } } public void run(){ //暂时还没有实现在窗口旁边的时候自动隐藏的功能 主要是现在主流是ee和android 懂的人太少了 [color=#0000FF]进度条那个是Win7自带的功能,应用程序不用管的,Win7操作系统自动把界面上的Progress bar上进度绘制到状态栏上。[/color] 楼主说的那些都是操作系统的功能,不是 Java 的功能,换句话说,什么软件在 Windows 7, Windows 8 上面都有这个效果。 那你写个例子看看有没有这个效果?呵呵 一个java窗口的编写应该不难吧 那你写个例子看看有没有这个效果?呵呵 一个java窗口的编写应该不难吧 那你写个例子看看有没有这个效果?呵呵 一个java窗口的编写应该不难吧 新人求助关于this的使用 程序在myEclipse中可以运行 在命令行里运行出错 如何自动执行 简单的图片操作问题。 java录音问题,高手进 JAVA的类型转换..........在线等待 算法题 如何用JTREE实现操作 Image和Graphics两个类的区别 为何我通过Class的getDeclaredMethods获取不到private类型方法? Java中为什么访问了父类的成员变量而不是子类成员变量? java客户端如何将服务器端的某一个文件夹下所有的文件都下载下来
标签: java 窗体最小化还原 swing it 分类: java
public class LCD_FrameHide extends JFrame implements Runnable,MouseListener{
private int xx;//窗口左上角x坐标
private int yy;//窗口左上角y坐标
private int cdheight=100;//窗口的高
private int cdwidth=100;//窗口的宽
private int hidepeer=10;//窗口隐藏的速度,单位为像素
//Thread hidethread;//窗口的隐藏或显示线程
PopupMenu cdpop1,cdpop2;//弹出菜单
MenuItem cdmenu1,cdmenu2,cdmenu3,cdmenu4,cdmenu5;//弹出菜单项
SystemTray cdtray=null;//托盘实例
TrayIcon cdicon=null;//托盘图标
ImageIcon cdimage;//图片
LCD_FrameHide(){
super(“类似于迅雷的浮动小小提示窗口”);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(cdwidth,cdheight);
cdimage=new ImageIcon(“lcd.jpg”);
cdpop1=new PopupMenu();
cdmenu1=new MenuItem(“关于”);
cdmenu2=new MenuItem(“退出”);
cdmenu3=new MenuItem(“最小化”);
cdmenu4=new MenuItem(“最小化并放到托盘”);
cdmenu5=new MenuItem(“还原”);
cdpop2=new PopupMenu();
cdicon=new TrayIcon(cdimage.getImage(),”LCD的窗口隐藏测试”,cdpop2);
cdmenu1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JOptionPane.showMessageDialog(null,”我用来测试隐藏功能的”);
}
});
cdmenu2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
cdmenu3.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
setState(Frame.ICONIFIED);
}
});
cdmenu4.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
if(SystemTray.isSupported()){
cdtray=SystemTray.getSystemTray();
try{
cdtray.add(cdicon);
dispose();
}
catch(AWTException ex){
JOptionPane.showMessageDialog(null,”当前系统不支持系统托盘实例!出错信息:”+ex.toString());
}
cdicon.addMouseListener(new MouseListener(){
public void mouseClicked(MouseEvent e){
if((e.getModifiers()&InputEvent.BUTTON3_MASK)!=0){
cdpop2.add(cdmenu1);
cdpop2.add(cdmenu5);
cdpop2.add(cdmenu2);
cdpop2.show(null,e.getX(),e.getY());
}
}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseEntered(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
});
dispose();
}
}
});
cdmenu5.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
setVisible(true);
cdtray.remove(cdicon);
}
});
cdpop1.add(cdmenu3);
cdpop1.add(cdmenu4);
cdpop1.add(cdmenu1);
cdpop1.add(cdmenu2);
add(cdpop1);
addMouseListener(this);
setLocationRelativeTo(null);
setUndecorated(true);
setVisible(true);
}
public void mouseExited(MouseEvent e){}
public void mouseReleased(MouseEvent e){
setVisible(false);
setLocation((int)(e.getX()-xx+getLocation().getX()),(int)(e.getY()-yy+getLocation().getY()));
setVisible(true);
}
public void mouseEntered(MouseEvent e){}
public void mouseClicked(MouseEvent e){
}
public void mousePressed(MouseEvent e){
xx=e.getX();
yy=e.getY();
if((e.getModifiers()&InputEvent.BUTTON3_MASK)!=0){
cdpop1.show(this,e.getX(),e.getY()); //在指定位置显示右键弹出菜单
}
}
public void run(){
//暂时还没有实现在窗口旁边的时候自动隐藏的功能
主要是现在主流是ee和android 懂的人太少了