草庐IT

java - 设置文本背景颜色?

如何在JOptionPane中设置文本背景颜色?图片:UIManagerUI=newUIManager();UI.put("OptionPane.background",Color.white);UIManager.put("Button.background",Color.white);UI.put("Panel.background",Color.white);UI.put("OptionPane.foreground",Color.white);UI.put("OptionPane.messagebackground",Color.white);UI.put("OptionPan

java - 更改 Nimbus LaF 处理 JTree 节点突出显示的方式

我一直致力于将Java应用程序从WindowsLookAndFeel转换到Nimbus,尽管Nimbus存在缺陷,但在很大程度上取得了成功。我的用户总体上喜欢NimbusLaF,但不喜欢某些细节,其中一些细节我通过查阅本网站上的先前问题进行了更改。示例:我从WindowsLaF(他们喜欢)复制了LeafIcon、ClosedIcon和OpenIcon,并在Nimbus版本中使用它们,以获得LaF的完美组合。卡在最后一个(?)问题上。我有一个带有子类DefaultCellRenderer的JTree来创建适当的节点显示。这在WindowsLookAndFeel下工作正常。问题:在Wind

java - JFileChooser 上的系统外观布局,但带有 nimbus 外观主题

JFileChooser上的窗口布局比其他类似nimbus的外观要好得多。所以我正在寻找一种方法来让系统的布局看起来和感觉起来,但在顶部有nimbus或其他主题。这可能吗?如果可以,如何实现? 最佳答案 这是可能的,但我不知道是否推荐这样做。我设法让它工作,方法是让View在除了最顶层的JFileChooser组件之外的所有组件上更新自身(因为这会将所有选择器组件替换为您不想要的Nimbus组件)。我认为这是一种hack,它可能有效也可能无效,具体取决于Windows外观和感觉的内部结构。它几乎依赖于由Swing组件构建的整个JFi

java - 启用nimbus时无法在JDK7中透明和未修饰的JFrame

看看这张图:这是透明框架的代码:GraphicsEnvironmentge=GraphicsEnvironment.getLocalGraphicsEnvironment();GraphicsDevicegd=ge.getDefaultScreenDevice();if(!gd.isWindowTranslucencySupported(TRANSLUCENT)){System.err.println("Translucencyisnotsupported");System.exit(0);}JFrame.setDefaultLookAndFeelDecorated(true);这很好

java - JTabbedPane:选项卡左侧的图标

你好,我正在使用灵气外观,并且有一个带有图标和文本的选项卡式Pane。现在图标出现在文本的右侧,而我希望它出现在左侧。我还想在图标和文本之间添加一些间距。谢谢! 最佳答案 需要自己设置tab组件;它控制选项卡标题的呈现方式。//Createtabbedpaneandaddtabs.JTabbedPanetabbedPane=...//Createbespokecomponentforrenderingthetab.JLabellbl=newJLabel("Hello,World");Iconicon=newImageIcon(get

java - 某种外观和感觉是否保证可用?

据我所知,Nimbus外观是在Java6Update10中引入的。我有一个项目,我在其中使用了那种外观。是否存在以下情况:用户拥有比6update10更新的JavaVM(例如6update26)并且Nimbus外观不可用?例如,如果可以手动/显式删除外观,则可能会出现这种情况,但我无法确定是否可以这样做。那么基本上,是否可以100%保证,如果用户拥有正确的JavaVM版本,Nimbus外观将在100%的时间内可用?提前谢谢你。 最佳答案 没有明确的方式让用户从他们的JVM中删除特定的外观。不过,一切皆有可能。只在代码中检查它有什么问

java - 覆盖每个组件实例的 Swing Nimbus L&F 原色

我正在尝试为JButton/JTabbedPane的特定实例覆盖“nimbusBase”颜色,但没有成功。只有组件的特定属性,例如“Button.background”,正在工作。有什么想法吗?UIDefaultsdialogTheme=newUIDefaults();//dialogTheme.put(“nimbusBase”,Color.orange);//dialogTheme.put("nimbusBlueGrey",Color.blue);dialogTheme.put("Button.background",Color.yellow);JButtondialogButton

Java:如何动态覆盖类的方法(类最终不在类路径中)?

如何动态+条件地调用类的方法?(类最终不在类路径中)比方说,我需要NimbusLookAndFeel类,但在某些系统上它不可用(即OpenJDK-6)。所以我必须能够:了解类可用(在运行时),如果不是这样,跳过整个事情。我如何设法覆盖动态加载类的方法(从而创建它的匿名内部子类)?代码示例publicstaticvoidsetNimbusUI(finalIMethodmethod)throwsUnsupportedLookAndFeelException{//NimbusLookAndFeelmaybenowavailableUIManager.setLookAndFeel(newNim

具有透明文本字段的 Java Nimbus LAF

我有一个应用程序在几个地方使用禁用的JTextFields,这些地方是透明的-允许显示背景而不是文本字段的正常背景。当运行新的NimbusLAF时,这些字段是不透明的(尽管设置了setOpaque(false)),并且我的UI被破坏了。就好像LAF忽略了不透明属性。设置背景颜色在几个地方都很难明确设置,而且由于背景图像的原因也不是最佳实际上是行不通的——它仍然在顶部绘制它的LAF默认背景,留下类似边框的外观(下面的启动画面明确设置了与图像匹配的背景)。关于如何让Nimbus不为JTextField绘制背景有什么想法吗?注意:我需要JTextField而不是JLabel,因为我需要线程安

java - Java 中的梯度问题

在我的程序中,我希望在我的JFrame上有一个半透明的白色到透明的渐变以覆盖黄色背景。这很好用,它需要从白色到透明,因为我对程序的设置是如何为用户工作的。但是,当我将该程序带入大学时(JRE7到我的JRE6),渐变从白色变为黑色然后透明......在你开始增加白色的不透明度之前它并没有那么糟糕......无论如何我可以解决这个问题吗?这是我的JFrame代码顶部的相关代码。publicclassDictionaryGUIextendsJFrame{protectedJPanelpGradientPane;//InterfacegradientspecificationprivateCo