草庐IT

java - 如果不推荐使用 Swing,还有什么替代方案?

我听说Swing显然不再开发了。我喜欢Swing并一直使用它。我现在应该改用什么? 最佳答案 我从未听说过这样的事情,并且仍在开发swing应用程序。不要轻信谣言。但作为替代方案,您可以使用JavaFx或swt或buoy. 关于java-如果不推荐使用Swing,还有什么替代方案?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5828625/

java - 设置新的 TreeModel 时如何自动扩展 JTree?

我有一个自定义的JTree和一个自定义的JModel;当我给它一个新模型时,我希望JTree能够“自动扩展”。目前,它只是将所有节点折叠到根。这是一个例子:privateclassCustomTreeextendsJTree{@OverridepublicbooleanisExpanded(TreePathpath){return((Person)path.getLastPathComponent).hasChildren();}privateclassCustomTreeModelextendsTreeModel{//...omittingvariousimplementationd

java - 与 Guice 一起 Swing

我已经将Guice用于我的应用程序的数据模型,到目前为止我对它非常满意。然而,GUI部分即将变成一个大泥球。我发现这里很难使用Guice,因为Swing组件和模型是紧密耦合的,并且经常强制执行特定的初始化顺序。我的应用程序基本上由一个带有许多过滤器的标题、一个中央且相当复杂的JTree组件以及许多操作(例如来自JPopup)、菜单、对话框、向导等组成。主要问题是我有组件和操作之间有很多耦合(例如复杂的验证、树更新……)。你能给我一些关于如何使用Guice构建GUI的建议吗?我知道像GUTS这样的库,但文档真的很薄,我宁愿避免向我的项目添加另一个依赖项并学习另一个API(例如,我不知道S

java - 我可以将 CSS 用于 Java Swing 吗?

有什么方法可以在使用JavaSwing的应用程序中重用我的CSS? 最佳答案 Javaswing通常不是为了将其控件与其表示分离而构建的,但是有一个名为Jaxx的开源框架写的可能对你有帮助。使用Jaxx,您可以执行类似this的操作://yourstylegoeshere...然后包含一个css文件来设置您的组件的样式:Application{lookAndFeel:system;}#display{background:#BCE5AD;opaque:true;horizontalAlignment:right;border:{Bo

java - Swing 中光滑的圆角

我想为我的swing应用制作平滑的圆角,但我得不到我想要的结果......截图如下:1.setShape()用于JFrame:2.重写JPanel的paintComponent()方法,而不是使用setShape():3.setBackground(newColor(0,0,0,0))用于JFrame:好吧,但是文字质量有问题:在第3步之前:在第3步之后:伙计们,我很困惑,我已经搜索了很多次,但没有任何帮助...我应该怎么办?请帮助我完整代码如下:publicclassWelcomePageextendsJFrame{privatePointinitialClick;privatebo

java - 如何知道用户何时真正释放了Java中的 key ?

(为清楚起见进行了编辑)我想检测用户何时按下和释放JavaSwing中的某个键,忽略键盘自动重复功能。我还希望在Linux、MacOS和Windows上使用纯Java方法。要求:当用户按下某个键时,我想知道那是什么键;当用户松开某个键时,我想知道那是什么键;我想忽略系统自动重复选项:我只想在每次按键时接收一个按键事件,在每次按键释放时只接收一个按键释放事件;如果可能,我会使用项目1到3来了解用户是否一次按住了多个键(即,她按下“a”但没有松开,而是按下“Enter”)。我在Java中面临的问题是,在Linux下,当用户按住某个键时,会触发许多keyPress和keyRelease事件(

java - Swing 对话框如何工作?

如果您在Swing中打开一个对话框,例如JFileChooser,它会有点像这样的伪代码:swingeventthread{createdialogaddlistenertodialogcloseevent{returnValue=somethingFromDialog}showdialog(waituntilitisclosed)returnreturnValue}我的问题是:这怎么可能行得通?如您所见,线程等待返回,直到对话框关闭。这意味着Swing事件线程被阻塞。然而,人们可以与对话框交互,AFAIK需要此线程运行。那么它是如何工作的呢? 最佳答案

Java 本地化最佳实践

我有一个带有服务器和Swing客户端的Java应用程序。现在我需要本地化用户界面,并且可能还需要一些数据是特定于区域设置的。有几件事我想听听您的具体意见。我应该如何将UI的本地化字符串分发到属性文件中?在我的应用程序中有几个View,每个View都有几个面板。我应该为每个面板或View的每种语言准备一个本地化文件,还是应该将一种语言的所有翻译保存在同一个文件中?我目前倾向于每个View和语言一个文件,但我不确定我应该如何处理出现在许多地方的一些特定领域的术语。对多个文件进行相同的翻译听起来不太好。服务器抛出一些异常,其中包含应向用户显示的消息。我可以从session中获取选定的语言环境

java - 为 JTree 实现工具提示的最佳方式?

由于JTree和TreeModel不直接提供开箱即用的工具提示,您认为为JTree提供特定于项目的工具提示的最佳方式是什么?编辑:(之后回答我自己的问题。)@Zarkonnen:感谢getTooltipText的想法。我发现了另一种(也许仍然更好)覆盖DefaultTreeCellRenderer的方法并想分享它:publicclassJTreeWithToolTips{privatestaticclassOwnRendererextendsDefaultTreeCellRenderer{@OverridepublicComponentgetTreeCellRendererCompon

java - Swing & batik : Create an ImageIcon from an SVG file?

简而言之,我正在寻找一种使用batik库从SVG文件制作ImageIcon的方法。我不想先将SVG光栅化到磁盘,我只想能够从jar文件中提取svg并将其作为UI元素放置。我觉得这应该相当容易,但batikjavadocs并没有告诉我我需要知道什么。(为什么选择batik?好吧,我们已经在使用它了,所以我们不必运行另一个合法的图书馆。) 最佳答案 这真的很简单,只是不是很直观。您需要扩展ImageTranscoder。在createImage方法中,您分配一个BufferedImage,将其作为成员变量缓存,然后返回。writeIma