我需要在JDK 1.6中设置LookAndFeel文件.我有两个文件:
napkinlaf-swingset2.jar
napkinlaf.jar
如何设置并使用它?
我想要一个GTK的外观和感觉或者Qt的外观和感觉,它们是否可用?
我是一个学习如何制作GUI的Java/Netbeans新手.
我正在按照本教程,我注意到"完成"的产品(该链接中的第一张图片)看起来不像通过这些步骤构建的GUI.
这是为什么?我的意思是,当我点击预览按钮时,GUI看起来也很本机(很好).只是当它被部署时,它看起来都......嗯......糟糕.大声笑.
有没有办法让完成的GUI看起来像原生的?是Netbeans设置还是Java设置?
注意:我正在Windows上开发这个.
任何人都可以解释为什么Nimbius以不同于其他java LaF的方式处理setOpaque().它破坏了我的代码,因为通常透明的组件不再是.
编辑:问题似乎只涉及JTextAreas(这是我需要的)或类似的组件.
编辑编辑:这是实际应用程序的屏幕.在应用trashgod的解决方案时,背景仍然无法显示.

编辑编辑编辑:
我尝试了trashgod的建议来覆盖paint().我辛苦工作了好几个小时,无法让它发挥作用.我能够显示背景,但JinternalFrame无法移动,调整大小并选择其文本.调用super.paint(g)无法解决问题.有没有一种简单的方法可以让我失踪?
我采取了一种新方法.JInternalFrame内部是一个JLayeredPane.
第0层 - JLabel
第1层 - JTextArea
移动或调整JInternalFrame时:
因为我无法让JInternalFrame完全透明.我模拟了它的透明度.唯一的问题是,与此相关的开销很大.有什么想法吗?

package newpackage;
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JLayeredPane;
import javax.swing.JPanel;
import javax.swing.UIManager;
/**
* Example of how to create a transparent internal frame.
* @author dvargo
*/
public class TransparentInternalFrame extends JInternalFrame {
JLayeredPane container;
/**
* Defualt constructor to set the frame …Run Code Online (Sandbox Code Playgroud) 我想在Java中创建圆形JButton ...
为此,我使用圆形图像并将该图像放在按钮上,但我没有得到圆形按钮..
请任何人可以告诉如何在Java中创建圆形按钮如下图所示..

提前致谢.....
我成功地在我的java文件中使用了JTattoo.但是"JTattoo"一词出现在JMenu的下拉列表中.有没有办法摆脱它?或者我可以替换该文本吗?
这似乎应该是直截了当的,但我还没有找到一个"好"的方法来做到这一点......
在使用Swing Nimbus L&F时,我想让我的控件(JButtons,JTextField等)在焦点时呈现黄色背景色.除了黄色背景颜色,我希望它们保留所有常见的Nimbus造型.
如果没有聚焦,我希望它们能够用正常的Nimbus样式绘制.
我发现这样做的唯一方法是为每个控件重写控件 [Focused] .backgroundPainter(这相当于从头开始重写大部分Nimbus).
我错过了什么吗?谢谢!
我在Java Swing中创建了一个应用程序.我提供了从菜单中更改应用程序外观的选项,但是在添加新选项卡后JTabbedPane,它没有使用新的外观进行更新.
我已经使用过这段代码:
Window windows[] = Frame.getWindows();
for(Window window : windows) {
SwingUtilities.updateComponentTreeUI(window);
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试调整Nimbus外观和感觉的颜色,但它只是部分工作.特别是我在调整菜单栏的颜色时遇到了问题.
这是一个运行的例子:
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UIManager.LookAndFeelInfo;
import javax.swing.UnsupportedLookAndFeelException;
public class JMenuColorTest extends JFrame {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
try {
adjustLAF();
} catch (Exception e) {
e.printStackTrace();
}
JMenuColorTest test = new JMenuColorTest();
test.setDefaultCloseOperation(EXIT_ON_CLOSE);
test.setPreferredSize(new Dimension(400, 300));
test.pack();
test.setLocationRelativeTo(null);
JMenuBar menuBar = new JMenuBar();
JMenu menu1 = new JMenu("Menu 1");
menu1.add(new JMenuItem("Item 1.1"));
menu1.add(new JMenuItem("Item 1.2")); …Run Code Online (Sandbox Code Playgroud) 我正在开发一个具有自定义外观的应用程序.对于GUI测试,我使用的是FEST-Swing.目前,GUI测试使用默认的Java外观运行.因此,有些测试失败,但是我应该将其视为GUI中的错误,还是使用我的自定义外观进行测试?
稍后编辑:
谢谢Andrew Tompson的快速回答.但我认为这个问题仍然存在,因为流程布局的工作方式.这是一个发生了什么的模型:

标准LAF使用比我使用的字体更大的字体,这导致其中一个按钮退出布局.我不能使用pack(),因为该容器有一个大小要求.如果您没有在该示例中调用frame.pack(),我认为您会遇到同样的问题.
我在Android上运行的PhoneGap 3.1项目工作正常 - 使用Android API lvl编译.19.但是,原生对话框/警报使用的是Froyo/Android 2.x外观,而我希望它们使用ICS/Android 4.x外观.在我的旧版本中,我确实通过更新AndroidManifest.xml中的targetSDKVersion来设法使用ICS获取对话框主题.但是,这在我的3.1项目中没有用.
这是他们在运行PhoneGap 2.5的应用程序版本中看起来的一个示例:

这是他们在我的运行PhoneGap 3.1的应用程序中的外观示例:

我相信这不是一个PhoneGap问题,而是更多Android Eclipse项目设置.但我不知道我需要改变什么才能解决这个问题?有人可以建议吗?谢谢!