0 0

【急】关于jframe中组件与鼠标坐标不一致10

最近学习java图形编程时遇到好多问题完全没有头绪

我创建了一个JFrame的子类BrickFrame,JPanel的子类Brick(一个矩形)

然后我在BrickFrame中添加一个Brick

Brick brick = new Brick();

add(brick);

设置brick的坐标brick.setLocation(0, 0);

如图


 

然后我通过监听鼠标事件,想让brick移动到鼠标点击的地方,但是brick的位置总是出现在我鼠标点击的右下角一点的位置,比如我点击这个窗口中最左上角的位置(上图中brick的左上角),按理说brick也应该紧挨着左上角不变,但是却是这样:


 

我在控制台输出鼠标坐标位置,发现在brick (0, 0)的坐标位置,鼠标的坐标确是(8, 30)。好像刚好是这个Frame的边框的像素。这是为什么呢?怎么才能让鼠标得到的坐标不包含边框呢?


问题补充:为什么没人帮我解决问题啊?是我没有描述清楚吗?
2014年3月14日 10:56
  • 大小: 21.6 KB
  • 大小: 21.6 KB

1个答案 按时间排序 按投票排序

0 0

final TButton tb = new TButton();
        tb.setText("button");
        JPanel pane = new JPanel(null);
        
        tb.setBounds(50, 50, 100, 30);
        pane.add(tb);
        
        pane.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                tb.setLocation(e.getX(), e.getY());
            }
        });

2014年3月15日 11:49

相关推荐

    java获取鼠标坐标位置swing

    标题"java获取鼠标坐标位置swing"指的是利用Java Swing来编程,实现在Swing组件上显示鼠标移动时的坐标位置。 首先,要获取鼠标坐标,我们需要导入必要的Java Swing库,如`javax.swing.*` 和 `java.awt.event.*`。...

    取得鼠标坐标.rar

    这个名为"取得鼠标坐标.rar"的压缩包文件似乎包含了一个执行程序,用于展示或帮助开发者理解如何在编程中获取鼠标的实时位置信息。下面我们将深入探讨这个主题,讲解如何在不同的编程语言中获取鼠标坐标。 首先,让...

    Java实现跟踪鼠标运行坐标的源码

    在Java编程语言中,跟踪鼠标的运行坐标是一项基础但实用的技术,这通常涉及到事件处理和图形用户界面(GUI)的设计。下面将详细讲解如何通过Java实现这个功能。 首先,Java中的`java.awt.event.MouseEvent`类提供了...

    Java实现跟踪鼠标运行坐标的源码.7z

    获取到鼠标坐标后,源码可能会把这些坐标信息显示在一个文本框或者标签(`JLabel`)中,或者在画布上绘制一个点来表示鼠标的位置。这通常涉及到`repaint()`方法的调用,以刷新组件的视图。 6. **Swing和AWT组件**...

    窗口 鼠标坐标.txt

    - **Swing**: Swing是建立在AWT基础上的一组更高级别的GUI工具包,提供了一系列功能更强大且外观更一致的组件。Swing组件通常继承自AWT的对应组件,并添加了更多的功能和灵活性。 #### 二、程序代码解析 ##### 1. ...

    基于Java的实现跟踪鼠标运行坐标的源码.zip

    在Java Swing中,我们可以使用`addMouseMotionListener`方法将`MouseMotionListener`添加到需要监听的组件上,比如JFrame、JPanel等。例如: ```java myComponent.addMouseMotionListener(new MouseMotionAdapter...

    基于java的实现跟踪鼠标运行坐标的源码.zip

    在Java编程语言中,跟踪鼠标运行坐标是一项基本的GUI(图形用户界面)编程任务,它涉及到事件处理和组件监听。这个"基于java的实现跟踪鼠标运行坐标的源码.zip"文件很可能包含了一个简单的Java应用程序,该程序展示...

    java源码:Java实现跟踪鼠标运行坐标的源码.rar

    为了保证界面的响应性和避免阻塞,所有与UI相关的操作都应在这个线程中执行,包括更新坐标和重绘组件。 7. **代码组织**: 优秀的Java源码通常会遵循良好的代码组织原则,如单一职责原则(Single Responsibility ...

    判断鼠标是否移动到某组件上源码

    在编程领域,尤其是在GUI(图形用户界面)开发中,判断鼠标是否移动到某组件上是一项常见的功能需求。这个功能可以帮助实现交互式应用,比如高亮显示、悬停提示或者响应鼠标事件。在Java Swing或JavaFX这样的库中,...

    Java实现跟踪鼠标运行坐标的源码.zip

    这个方法会在鼠标在组件上移动时被调用,参数`e`是一个`MouseEvent`对象,包含了关于事件的所有信息,包括鼠标的位置。 ```java import java.awt.event.MouseMotionListener; import javax.swing.JFrame; import ...

    使用Java语言,编程确定当前鼠标的位置坐标。.rar

    4. **获取鼠标坐标**: 在`mouseMoved()`或`mouseDragged()`方法的回调中,我们可以访问`MouseEvent`对象。这个对象包含了关于鼠标事件的所有信息,如事件类型、时间戳以及鼠标位置。通过调用`getPoint()`或`getX()...

    java鼠标事件--正弦曲线

    在Java编程中,鼠标事件(MouseEvent)是图形用户界面(GUI)编程的重要组成部分,它允许程序响应用户的鼠标操作。在这个“java鼠标事件--正弦曲线”的主题中,我们将深入探讨如何利用Java AWT和Swing库来处理鼠标...

    swing 鼠标绘画

    在绘画应用中,我们需要在鼠标按下时记录起始坐标,然后在鼠标移动时不断更新线条的终点坐标,直到鼠标释放。 5. **事件处理**: Java中的事件处理采用模型-视图-控制器(MVC)模式。在这个应用中,我们需要在Swing...

    java实现图片中心放大、缩小、移动、鼠标拖移

    在Java编程语言中,处理图像是...通过以上步骤,我们可以在Java中实现一个功能齐全的图像处理组件,能够支持图片的中心放大、缩小、移动以及鼠标拖移。这在开发涉及图像交互的应用,如地图应用或图像编辑器时非常有用。

    Java编写的一个小程序,用以实现跟踪鼠标的运行位置

    在Java AWT(Abstract Window Toolkit)库中,`MouseListener`接口是用于监听鼠标事件的核心组件。要实现鼠标位置跟踪,我们需要实现这个接口并覆盖它的四个方法:`mousePressed`、`mouseReleased`、`mouseClicked`...

    用鼠标左键制图

    - **JPanel**:Swing中的面板容器,用于容纳其他组件,并且可以进行自定义绘图。 - **JPopupMenu**:弹出菜单,通过`show`方法展示。 - **JMenuItem**:菜单项,添加到`JPopupMenu`中。 #### 1.3 绘图上下文 - **...

    shubiao.rar_java 鼠标事件

    通过`MouseEvent`的`getX()`和`getY()`方法可以获取鼠标在组件上的坐标,这对于定位和拖放操作特别有用。 8. **事件处理的层次** 在复杂的GUI中,事件可能会被多个组件捕获。事件处理遵循"事件冒泡"或"事件捕获...

    Java实现跟踪鼠标运行坐标的

    在这个场景中,源码实现了跟踪鼠标坐标的功能。 2. **系统相关**:这里的“系统相关”可能指的是程序与操作系统交互的能力。在Java中,这通常涉及到Java的AWT(Abstract Window Toolkit)或Swing库,它们提供了与...

Global site tag (gtag.js) - Google Analytics