问题标签 [mouse-listeners]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1266 浏览

java - 如何将 swing JTextField 组件转换为扩展它的类型的对象

我有一个使用第三方程序包的应用程序,该程序包有一个工厂,它返回给我的 JTextField 对象,然后添加到 GUI 中。这占使用的 JTextField 的大约 10%。

我无法更改第三方包,但需要在所有字段中添加右键单击(剪切、复制和粘贴)选项。

现在我有一个 RightClickTextField,它扩展了 JTextField 并内置了所有功能,这可以解决我 90% 的应用程序的问题。

但是对于使用第三方包获取 JTextFields 的 10%,我想不出一个解决方案,可以让我将字段声明为 RightClickTextFields 但使用工厂,我必须取回盒子。我知道我无法转换结果,因为返回的对象不是层次结构中较高的类型,并且复制构造函数将不起作用,因为我无法复制工厂设置的每个属性,但我不知道一种将 JTextField 向上转换为我的类型的方法。有吗?

0 投票
1 回答
1249 浏览

java - 在javafx中注册鼠标处理程序但处理程序不是内联的

我有一个 JavaFX 应用程序变得有点大,我想让代码保持可读性。

我有一个 LineChart,我想在鼠标点击时内置缩放功能。我知道我需要在图表上注册一个鼠标侦听器。我无法从 Oracle 示例中弄清楚,即写在这里:

http://docs.oracle.com/javafx/2/events/handlers.htm

是如何不将我的处理程序定义为内联到注册。换句话说,我希望处理程序的主体(即多行代码)位于另一个类中。我可以这样做吗?如果是这样,我如何在我的主 Javafx 控制器代码中将处理程序注册到我的图表?

0 投票
2 回答
1889 浏览

java - 鼠标点击移动一个圆圈

我对Java真的很陌生,当点击它时我需要一个圆圈来围绕一个JFrame移动,但是这个圆圈必须获得随机坐标。到目前为止,此代码每次单击时都会生成一个新圆圈,但所有其他圆圈也会保留在那里。我只需要一圈就可以在框架周围移动。所以也许有人可以帮助我一点:)

这是我的代码:

0 投票
2 回答
92 浏览

java - 一条线如何用作 Swing 按钮?

我正在创建线条和其他组件,并希望它们像 Swing 按钮事件一样响应,因为线条是可点击的:

这是如何工作的?

0 投票
1 回答
2145 浏览

java - 如何将鼠标侦听器添加到 JPanel 图像?

我使用以下代码在 JPanel 上绘制了 BufferedImage。

如何向该图像添加鼠标单击侦听器?另外,我想获取图像的点击坐标,而不是 JPanel。

0 投票
2 回答
153 浏览

java - 允许用户移动字段的 Java gui

我正在尝试创建一个 java gui,目前我正在使用他们的 gui 创建者在 netbeans IDE 中玩耍,但我也一直在阅读一本关于 Swing 的书并试图以这种方式学习它。我希望有人可以帮助我解决我遇到的问题。我试图让用户拥有一个他们可以选择的字段“池”(例如标题、段落、文本恶魔、按钮等),并能够将项目从池中移动到另一个药水窗口可以让他们创建自己的布局。此时我不需要这些字段来做任何事情,但我确实希望用户能够移动它们并创建自己的布局。有没有办法做到这一点?

0 投票
2 回答
831 浏览

java - 带有 mousemotionlistener 的 JTree

我有一个JTree,当他将鼠标悬停在树节点上时,我想向用户显示一些描述。

我从文档中读到我们可以使用MouseMotionListener它。但是我怎样才能得到鼠标移动到的节点的值呢?

任何指针都会非常有用。

0 投票
3 回答
3465 浏览

java - Swing:在 Linux 中调整 JFrame 的大小,例如 Frames

我想知道是否有可能以这种方式实现 JFrame 的大小调整,它的大小已经调整,例如 linux 中的标准窗口。更准确的说:如果用户开始拖动,只有未来的窗口大小会被预览,而原始内容不会被调整大小。一旦用户释放鼠标,Frame 就会调整为该大小。在图像中:

(1) 调整大小前的状态

在此处输入图像描述

(2) 用户开始拖动(在红圈处)

在此处输入图像描述

(3) 用户释放鼠标,框架被调整大小

在此处输入图像描述

是否有可能在 Java Swing 中实现这一点?

编辑:

由于这个程序有一天也应该像 7 一样在较低的 Java RE 中运行,所以我尝试将 mKorbel 建议和评论中的建议与半透明框架结合起来。结果接近目标,除了

  • contentPane 的内容在我停止移动鼠标后调整大小,而不是在释放鼠标时
  • 框架标题会立即调整大小,而不仅仅是当我停止拖动框架边框时。
  • 它仅在从右侧或底部调整大小时才有效,否则内容会随着拖动而移动。

我认为第一点可以通过代码和 MouseListener 的组合来解决,例如 if mouseReleased(), then resize 。这是代码,请随意尝试。对于进一步的建议,我仍然对任何建议感到高兴。

该代码是对 Java 教程中的GradientTranslucentWindowDemo.java的略微修改。我希望它被允许在这里发布,否则请指出任何侵犯版权的原因。黑色的 JPanel 应该是应用程序的内容,因为 contentPane 保持不可见。

0 投票
3 回答
4334 浏览

java - 如何通过带有 MouseListener 的 JGlassPane 点击到它后面的 UI

我有一个JFrame和一堆JComponents在上面JFrame。我需要使用JGlassPane并且我使用这个实现来设置它。

JButtons这样做后,我无法JComponentsJGlassPane.

有没有一种方法可以只选择组件上的组件,GlassPane同时仍然能够选择组件下的组件GlassPane

编辑我忘了提到(不知道这是否相关)我确实将 aMouseListener和 a都附加MouseMotionListener到了玻璃窗格上。有没有办法将鼠标事件传递给其他组件并仅在需要时使用它们?

0 投票
3 回答
215 浏览

java - 我无法纠正的鼠标事件未知错误

我正在学习 java,在做 MouseListener 问题时,我在类声明中遇到错误,尝试了我所知道的一切,请帮助我。根据我的说法,我已经正确完成了所有编码,也将代码粘贴到了 IDE 中,但出现了同样的错误。

谢谢