问题标签 [swingutilities]
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 - Right click mouse event
I search through this forum but I can't find a good explanation on this topic. Is there any different from the below statements? Which way is the better way to trigger this event?
Vs.
java - 如何在两个线程上运行 Swing UI
我有一个场景,我需要我的 swing UI 在两个不同的线程上运行。我有一台笔记本电脑,我将在其中运行我的应用程序。在连接到我的笔记本电脑的另一个屏幕上单击应该开始演示文稿有一个按钮。
现在我做了一个扩展 SwingWorker 的课堂演示,并从文件夹中读取图像并将其显示在屏幕上。
在我的 start 方法中,我有读取图像并在 UI 上显示它们的代码
我觉得这种方法是错误的,因为我的 SwingWorker 不应该在 doInBackground() 中调用 invokeLater
据我所知,它应该是这样的:
我无法决定哪个部分应该放在哪里?
我有以下事情要做:
- 开始一个新的框架以在新屏幕上显示
- 每 2 秒将图像加载到框架中,从文件夹中读取图像
- 将 Presentation 类扩展到 SwingWorker,这种方法正确吗?因为在外部我有一个 Executor 对象,我在其 exec() 中传递了 Presentation 对象
请帮我 !
java - 如何更改 JLabel 颜色
我在更改 JLabel 颜色时遇到问题。我正在使用三个JLabel
变量。我将鼠标事件放在这个JLabel
变量上。当我输入鼠标时,我运行并且两者都改变了颜色JLabels
。我的意思是,JLabel
当时我在JLabel
变量上输入鼠标时会改变颜色。
请解决这个问题。
java - 访问包含 JTable 的 JScrollpane
我在 JScrollpane 中有一个 JTable。我无权访问 JScrollpane 变量。但我可以访问 JTable。现在如何使用 JTable 访问 JScrollpane。
java - 如何添加符合屏幕分辨率的摆动组件
如何编写一个符合屏幕分辨率的摇摆应用程序。
例如:要在面板中添加一个组件,比如标签 label1,我需要按百分比添加 label1 的位置。
我不想要 JFrame -> JScrollPane -> JComponents。这是一个非常糟糕的方法。组件根本不会调整大小。
有没有办法在java中添加关于百分比的组件?
java - swing中的invokeLater方法
嗨,我已经以下面的方式实现了稍后调用方法,但是在我单击下一个按钮后,我仍然无法从关闭按钮获得响应。请指出我的代码中的错误,或者请告诉我我期望的行为是否错误。
我希望在这里,如果我单击 btnNExt,我仍然应该能够在应用程序执行其数据库事务时关闭它。哪个没有发生?
我期待这里有什么问题还是代码有问题。
java - 如何保持对 JTextField 的关注。摇摆工人
我需要继续关注 JTextField。应用程序使用 Swing 库。我需要不时关注该领域,以避免将焦点转移到其他组件的用户错误。我想我需要使用 SwingWorker。设置焦点是对 Swing 组件的操作,因此它应该在 EDT 中调用。我的问题是如何编写 SwingWorker 来做到这一点?我知道方法 done() 传递要在 EDT 中调用的任务,但我需要每隔 2 秒调用一次此任务。方法 done() 被调用一次。所以也许这样的事情会好吗?
编辑:
我注意到作为 SwingWorker 一部分的方法 process() 可能是合适的,因为它是在 EDT 中调用的。我不确定,但是当我调用 publish() 方法时,可能总是会调用此方法。那么你能告诉我这段代码是否可以有效地完成这项任务吗?
java - SwingUtilities.updateComponentTreeUI() 方法是否将当前 L&F 设置为所有超级和子组件?
背景:
从文档中,该方法SwingUtilities.updateComponentTreeUI()
要求树(什么树?)中的每个组件调用该方法来更新它们自己的UI 属性updateUI()
。
强烈建议SwingUtilities.updateComponentTreeUI()
在设置好LAF后调用,调用method: ,否则LAF主题无法应用到某些组件上,最糟糕的是,某些组件无法重新设计(可能会抛出一些异常?)。UIManager.setLookAndFeel(LAFClassName)
我对这种事情很陌生,我是在发现更具启发性的方法之后才发现SwingUtilities.updateComponentTreeUI()
的UIManager.setLookAndFeel(LAFClassName)
。
在发现之前SwingUtilities.updateComponentTreeUI()
我一直有一些问题/Exceptions/NullPointerExceptions,而事实是直到我没有发现SwingUtilities.updateComponentTreeUI()
方法之前我才真正理解它们的原因,这让我明白树中的某些组件不可能是更新到新的 LAF。
具体/实际问题:
例如,如果我有一个
子框架
(动态实例化或由动作事件(点击)触发
主框架
),在这里我设置了外观和感觉属性,然后我调用SwingUtilitiesupdateComponentTreeUI()
传递给它的引用mainJFrame
:
SwingUtilities.updateComponentTreeUI(mainJFrame)
,
最后一个是否会更新其所有子组件/subJFrames(并因此更新subJFrame
我设置 LAF 的位置)?
这不是一个微不足道的问题(也请记住文档所说的内容),因为我UIManager.setLookAndFeel(LAFClassName)
在中调用方法subJFrame
(这个调用实际上是做什么的?)然后我调用SwingUtilities.updateComponentTreeUI()
方法传递给它的引用mainJFrame
,那么LAF 主题是什么将应用于mainJFrame
?的所有子组件 如果一些子组件/subJFrames还没有被初始化呢?
java - SwingUtilities invokeLater 的主要用途
我有这个代码片段
如果我不使用 SwingUtilities 有什么区别?
java - javax.swing.SwingUtilities.invokeLater 是必要的吗?
所以我看过无数不同的GUI教程,都说要使用这段代码:
尽管我可能不太明白这到底是做什么的,但由于我对 GUI 有点陌生,但我确实了解它的基本功能......或者我是这么认为的。但后来我,作为一个实验,把它全部删掉,然后就离开了:
它似乎奏效了。所以现在我有一个问题:保留我的第一段代码而不是仅仅使用第二段代码的目的是什么,而第二段代码看起来也一样好用?如果有必要,如果我不使用它会怎样?