CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  GUI 设计

求救::无标题栏的窗体拖动

楼主hitman9099(hitman)2006-02-19 17:39:46 在 Java / GUI 设计 提问

怎么在java中实现没有标题栏的窗体拖动    
  如何得到屏幕的坐标 问题点数:100、回复次数:4Top

1 楼hitman9099(hitman)回复于 2006-02-19 17:50:26 得分 0

难道就没有个高手告诉俺么Top

2 楼aaa2003gf(珍惜 (MSN:aaa2003gf@hotmail.com))回复于 2006-02-19 17:57:38 得分 10

你给窗体添加鼠标监听,就能得到鼠标当前的坐标  
   
        e.getX();  
        e.getY();Top

3 楼hitman9099(hitman)回复于 2006-02-19 18:01:17 得分 0

我添加了   可是mouseMoved这个事件只能得到当前frame的坐标   而得不到整个屏幕的坐标Top

4 楼mq612(五斗米)回复于 2006-02-19 19:03:42 得分 90

import   java.awt.event.MouseMotionAdapter;  
  import   java.awt.event.MouseEvent;  
  import   java.awt.event.MouseAdapter;  
  import   javax.swing.JFrame;  
  import   javax.swing.JPanel;  
   
  /**  
    *   利用鼠标监听解决无标题窗体的移动问题  
    */  
  public   class   Test   {  
          private   JFrame   frame   =   null;  
          JPanel   pane   =   null;  
          int   mouseX   =   0;  
          int   mouseY   =   0;  
   
          public   Test()   {  
                  frame   =   new   JFrame();  
                  frame.setUndecorated(true);  
                  pane   =   (JPanel)   frame.getContentPane();  
   
                  pane.addMouseListener(new   MouseAdapter()   {  
                          public   void   mousePressed(MouseEvent   mouseEvent)   {  
                                  if   (mouseEvent.getButton()   ==   mouseEvent.BUTTON1)   {  
                                          mouseX   =   mouseEvent.getX();  
                                          mouseY   =   mouseEvent.getY();  
                                  }  
                          }  
                  });  
   
                  pane.addMouseMotionListener(new   MouseMotionAdapter()   {  
                          public   void   mouseDragged(MouseEvent   e)   {  
                                  if   (e.getModifiers()   ==   e.BUTTON1_MASK)   {  
                                          frame.setLocation(frame.getX()   +   e.getX()   -   mouseX,  
                                                                              frame.getY()   +   e.getY()   -   mouseY);  
                                  }  
                          }  
                  });  
   
                  frame.setSize(300,   200);  
                  frame.setVisible(true);  
          }  
   
          public   static   void   main(String   args[])   {  
                  Test   t   =   new   Test();  
          }  
   
  }Top

相关问题

  • 一个无标题栏的窗体的拖动问题?
  • 非标题栏窗体拖动问题
  • 拖动无标题栏窗体时的出现问题?在线等待
  • 请问在vb.net中如何用鼠标拖动改变无标题栏窗体的大小
  • 如何拖动没有标题栏的窗体??
  • 无标题栏窗体的问题
  • 怎么移动无标题栏窗体
  • 无标题栏窗体的移动
  • ?如何判断当前是否在拖动窗体的标题栏??
  • 求能在Win98下用鼠标拖动没标题栏窗体的程序。

关键词

  • 坐标
  • 鼠标
  • 窗体
  • mouseevent
  • pane
  • jframe
  • jpanel
  • frame
  • awt
  • 得到

得分解答快速导航

  • 帖主:hitman9099
  • aaa2003gf
  • mq612

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo