草庐IT

Java Swing : Mouseover text on JComboBox items?

在Swing中,有没有办法为JComboBox中的每个项目定义鼠标悬停文本(或工具提示文本)? 最佳答案 有比已经给出的ToolTipComboBox答案更好的方法。首先,制作一个自定义的ListCellRenderer:packagecom.example;importjavax.swing.*;importjava.awt.*;importjava.util.List;publicclassComboboxToolTipRendererextendsDefaultListCellRenderer{Listtooltips;@Ov

java - 在 Mac 上设置 Java Swing 应用程序名称

我正在使用Java1.6为Mac编写JavaSwing应用程序。我已经阅读了很多教程,指导您逐步了解如何将Java应用程序与OSX更好地集成,但是有一件事我一直没能开始工作。我无法显示应用程序名称(Mac菜单栏中第一个粗体菜单项)。默认情况下,显示主类的完全限定类名,我无法更改它。Thissite说你必须设置以下属性:System.setProperty("com.apple.mrj.application.apple.menu.about.name","AppName");但这不起作用(我运行的是10.6,所以可能属性名称已更改?)。当我在XCode中创建一个新的Java项目时(我通

java - Swing 布局 : vertical flow

我应该使用什么LayoutManager来实现FlowLayout的转置版本?本质上,我想要一个垂直列表,如果它不能在一列中容纳所有组件,它会占据多列。+------------------------+|item1||item2||item3||item4||item5||item6||item7||item8|+------------------------+或+------------------------+|item1item7||item2item8||item3||item4||item5||item6|+------------------------+这种包装逻辑需

java - 如何从 gradle 构建中获取版本属性以包含在运行时 Swing 应用程序中

我有一个简单的父项目,其中包含模块/应用程序。我选择的构建工具是gradle。父build.gradle定义如下。applyplugin:'groovy'dependencies{compilegradleApi()compilelocalGroovy()}allprojects{repositories{mavenCentral()}version"0.1.0-SNAPSHOT"}我想做的是在我的swing应用程序中使用版本属性(0.1.0-SNAPSHOT)。具体来说,我希望它显示在主JFrame的标题栏中。我希望能够执行类似this.setTitle("MyApplication

Java 8u161/8u162 使 Swing 应用程序使用 CPU

当在8u161或8u162上运行Swing应用程序并且焦点在JTextField中并且您切换到另一个应用程序(如Chrome)并返回该应用程序时,我的8核Windows10PC上的CPU使用率增长到15%(好像整个核心都在忙于处理事件)。只需运行应用程序并切换几次。如果我单击选项卡式Pane中的选项卡,CPU使用率会按预期下降到0。publicclassTest{publicstaticvoidmain(String...args){SwingUtilities.invokeLater(()->{JFramef=newJFrame("Test");JTabbedPanetp=newJT

Java 外观 - 如何打破对 sun.swing.SwingUtilities2 的依赖

我正在维护一些代码,以在Java中实现自定义外观。在最近升级Java版本时(出于其他原因),我发现由于在sun.swing.SwingUtilities2.BASICMENUITEMUI_MAX_TEXT_OFFSET;这是一个紧密基于BasicMenuItemUI.layoutMenuItem()大约Java6u02(here'sthesource)的类。我发现Oracle重构了他们的代码以在我使用的新目标版本Java6u31中包含一个MenuItemLayoutHelper。我可以只使用MenuItemLayoutHelper但这并没有解决问题,它只是将它推迟到下一次Java内部结

java - 在 Java Swing 中缩放 JPanel

我有一个现有的JavaSwing应用程序。在应用程序的中间是一个JPanel,我希望能够对其进行放大和缩小。JPanel上有许多JComponents(主要是其他JPanels和JLabels)。此外,鼠标的位置也需要适当调整-因此即使JPanel已缩放,mouseevents也需要保持不变。因此,简单地更改每个component的paint方法似乎不太合理。编辑:好的,我使用MagnifierUIclass进行了一些小的修改,让它开始工作。然而,我创建的放大面板有错误的mouseevents-即面板是缩放的,mouseevents不是。 最佳答案

java - Swing UI 的单元测试框架

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭5年前。Improvethisquestion测试用户界面很困难。您认为Swing的最佳单元测试框架是什么?

java - 如何在 Java Swing 中控制 JTextFields 的宽度?

我试图在一行中放置多个JTextField,但我不希望它们具有相同的宽度。我如何控制宽度并使其中一些宽度比其他宽度大?我希望它们一起占据总宽度的100%,所以如果我可以使用某种称重工具就好了。我已经尝试使用.setColumns()但它没有意义。这是一个示例,其中我使用了三行,其中三个字符串应显示在列中:importjava.awt.GridLayout;importjavax.swing.BoxLayout;importjavax.swing.JComponent;importjavax.swing.JFrame;importjavax.swing.JPanel;importjava

c# - 用于跨平台应用程序的 Python + QT、Windows Forms 或 Swing?

我想开发一个中小型跨平台应用程序(包括GUI)。我的背景:主要是采用MVC架构的Web应用程序,包括Python(Pylons+SqlAlchemy)和Java(很了解这门语言,但不太喜欢)。我也知道一些C#。到目前为止,我没有GUI编程经验(既没有Windows窗体、Swing也没有QT)。我打算使用SQLite进行数据存储:它似乎是一个不错的跨平台解决方案,并且具有一些强大的功能(例如,SQLServerCompact缺少的全文搜索)。我做了一些研究,这些是我最喜欢的选项:1)QT、Python(PyQT或PySide)和SQLAlchemy优点:Python语言开源在Python