问题标签 [glasspane]
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.
java - 获取 JFrame 中 JTable Header 的位置
这是我的应用程序的图像:
如您所见,其中有一个 JTable。我需要获取 JTable 的标头相对于它所在的 JFrame 的位置。
为什么我会这样做?我正在添加一个帮助功能来解释表中每一列的用途。它把焦点放在每一列上。它看起来像这样:
如您所见,聚光灯显示的位置已关闭。
要获取位置,我Rectangle
使用以下方法获取列标题:
要将其转换Rectangle
为 JFrame 中的正确位置,我使用:
有人可以帮我获取列标题的正确位置吗?
java - 我应该如何将 JLabel 从 JFrame 中的一个 JPanel 拖到同一 JFrame 中另一个 JPanel 中的 JTextField 上?
简而言之,我想将 a 的文本设置为( )JLabel
中的 a的文本,然后将屏幕从另一个( )中的另一个拖动到另一个上。JTextField
JPanel
pnlUser
JLabel
JPanel
JTextField
JPanel
pnlGrid
这是详细信息。
我写了一个“Solitaire Scrabble”程序。用户可以将文本光标定位在网格单元格中(a JTextField
in pnlGrid
)并键入“用户字母”列表中的字母(a JTextField
in pnlUser
),或者用户可以模拟从“用户字母”中拖动一个字母并将其放下中的目标网格单元格pnlGrid
。
我说“模拟”是因为所选字母实际上并未在屏幕上拖动。我使用鼠标指针HAND_CURSOR
使拖放尽可能真实,但我还没有弄清楚如何HAND_CURSOR
“抓住”字母并将字母物理拖过板子到目的地。
HAND_CURSOR
实际上,在拖动操作期间沿网格移动时,字母被突出显示但留在“用户字母”区域中。当它到达目标单元格pnlGrid
并释放鼠标按钮时,该字母会从“用户字母”中删除,并突然出现在网格单元格中。
所以这封信或多或少地从“用户信件”“传送”(让我向上,斯科蒂)到一个网格单元。这太抽象了。我希望用户字母位于 HAND_CURSOR 手指的尖端,并沿着网格拖动到将被放置的网格单元格中,如下面的 3 张图片所示。
我已经使用 JLayeredPane 在一个小型测试程序(以下来源)中成功实现了它,但我无法在游戏中实现它。但是直到两天前我才对 JLayeredPane 一无所知,所以我真的不知道我在做什么。(我改编了一个演示 JLayeredPane 的 Oracle 教程程序。)
我刚刚阅读了“玻璃窗格”,并认为它可能更容易实现,直到我下载了该演示的源代码,这很长,所以因为它是全新的,而且更难适应。
所以我想在我花更多时间沮丧之前,我应该问:
一种JLayeredPane
或一种setGlassPane
方法是否合适?有没有更简单或更好的方法将一个JLabel
从一个JPanel
拖到另一个JPanel
?
(程序中的方法是确定指向哪个“用户字母”,将该字母存储在 aJLabel
中,然后确保指尖正好位于字母的底部中心。mouseDragged
)HAND_CURSOR
java - 从 AWTEvent 确定它是否是 Mouse_Exited 事件
在我们正在编写的软件中,我们有时会使用 GlassPane 来防止用户在程序繁忙时与程序进行交互,这会产生意想不到的副作用,即某些按钮的翻转被设置但没有被删除。
翻转设置,玻璃窗格激活,玻璃窗格消耗 mouse_exit 事件。
GlassPane 注册为:
因为我们发现我们也需要捕捉鼠标运动和鼠标滚轮事件。
无论如何,如果事件来自 Mouse_Exit 事件,是否可以在代码的上述位置找到?
java - Java GlassPanel 清晰透明背景
我想在我的 GlassPane 上渲染一些东西。问题是,如果我移动渲染的线条,之前渲染的像素仍然具有相同的颜色。我不能使用 g.clearRect 因为它不会清除透明度。
那是我的渲染代码:
结果如下:
java - 我可以将一个玻璃窗格一分为二,并为每个添加一个单独的鼠标侦听器吗?
我在玻璃窗格下有一些带有两个图像的代码。我想让每个图像都在它自己的玻璃窗格下,并且每个玻璃窗格都发出它自己的鼠标监听器的信号。目前,我将它们都制作在一个玻璃窗格下,一个鼠标监听器用于整个玻璃窗格。两个图像并排在网格布局中,因此将玻璃窗格分成两半应该不会太难。这是一个玻璃窗格的代码,但请注意,我正在尝试制作两个玻璃窗格,并为每个图像制作两个单独的鼠标侦听器类。这只是带有一个*两个图像的鼠标侦听器的代码:
这是camickr请求的代码,请注意有两个单独的鼠标侦听器,我很想知道如何做到这一点。当 JLabel 跟随鼠标时,1)它离鼠标非常远,2)它不显示完整的 JLabel 和 3)它在一次退出/进入后不会改变。我非常感谢您的帮助,这是基于 camickrs 建议的代码:
java - java glasspane没有更新
我的代码有一个小问题。一旦我单击 udpate 按钮,它就会显示玻璃窗格。但它没有,我不知道为什么。如果我 setVisibility(true) 到构造函数中的玻璃窗格,它就可以工作。任何人都可以帮助我吗?这是我的代码
}
先感谢您
java - Glasspane 不工作,java
我一直在研究一个小的 java 应用程序,我想在应用程序的根窗格的玻璃窗格上添加一个等待图形,这里是类:
和主要课程:
但是当我将按钮操作更改为:
这没用。
java - 在 Glass Pane 上绘制图形
我目前正在制作棋盘游戏 Khet 的一个版本,并计划使用玻璃板展示在转弯之间发射的激光,但对于我的生活,我根本无法让图纸出现。为了节省发布游戏的所有代码,我发布了仅与玻璃窗格相关的代码,因为它在下面是自己的单独应用程序。谁能告诉我为什么没有显示图形?
java - Java:“请稍候”GlassPane 未正确加载
我有一个需要几秒钟才能完成的 java 例程。我想加载一个GlassPane
(可能带有“预先等待”消息),以防止用户在该例程正在执行时修改 UI,并且在例程完成时自动隐藏。为此,我使用以下代码:
我设置了一个特定java.awt.Cursor
的myGlassPane
. 当我运行上面的代码时,我可以看到新的java.awt.Cursor
出现,但不是整个出现GlassPane
“请稍候”消息等等......
关于可能导致此问题的任何想法?是否有其他更好的方法来获得我正在寻找的东西而不是使用GlassPane
and Thread
?