我知道您可以修改LaF属性,但是如何在不执行此操作的情况下完成此操作?我只是问,因为setBackground
似乎没有这样做.
请注意,我正在寻找更改以下属性:
TabbedPane.background
(或TabbedPane.contentAreaColor
?)TabbedPane.tabAreaBackground
我有一个问题,我有一个包含值C:\ Users\Ewen\AppData\Roaming\MyProgram\Test.txt的String,我想删除C:\ Users\Ewen\AppData\Roaming\MyProgram \所以只留下测试.所以问题是,如何删除字符串的任何部分.
谢谢你的时间!:)
当用户提示我这样做时,我想要填充一个表.问题是,我无法预测表最终会有多少行.在我的面板的构造函数中,我将显示表
// add empty scrollPane to JPanel which will later hold table
scrollPane = new JScrollPane();
add(scrollPane);
Run Code Online (Sandbox Code Playgroud)
这个类包含一个方法,当我想最终显示表时将调用该方法
public void displayTable(String[] columnNames, String[][] dataValues)
{
table = new JTable(dataValues, columnNames);
table.setPreferredScrollableViewportSize(new Dimension(300, 80));
table.setFillsViewportHeight(true);
scrollPane.add(table);
this.setVisible(true);
scrollPane.repaint();
}
Run Code Online (Sandbox Code Playgroud)
问题是,表格永远不会显示.我只看到ScrollPane里面没有桌子的轮廓.为什么不显示表格以及如何修复它?
我有一个小的java桌面应用程序,需要能够分别单击"+"和" - "按钮动态添加和删除字段.我已经通过调用revalidate()然后在所有父容器上重绘()直到ActionListener中的JFrame来实现这一点.
这似乎已经成功,但偶尔它不起作用,JPanels没有正确调整大小.这种情况很少发生并且看似随意,让我相信这可能是一个并发问题.我尝试从事件派发线程启动父容器,但这还没有解决问题.
这实际上是一个并发问题还是我在错误的树上咆哮?任何人都知道发生了什么以及如何解决这个问题?
非常感激
-SwingNoob
这很简单,我想做什么,但我无法想办法.在JFrame或JPanel中,如何垂直居中组件?也就是说,类似于在HTML中使用中心标记.组件位于列中,它们都居中.
我尝试过使用Y_AXIS和PAGE_AXIS的BoxLayout,但它以一种奇怪的方式对齐我的组件.我试图使用FlowLayout设置首选大小,以便它包裹,但它不会居中.除非它真的是唯一的选择,否则我宁愿不使用像GridBagLayout这样强大的东西来做这么简单的事情.救命!
我想在我的程序中按下按钮时,将JFrame动画化为半角.我认为最简单的方法是将JFrame的当前边界放入计时器,并在计时器运行时将边界减1,但是当我在netbeans IDE中声明一个新的计时器时,它看起来像这样.
Timer t = new Timer(5,new ActionListener() {
public void actionPerformed(ActionEvent e) {
//inside this I want to get my Jframe's bounds like this
// int width = this.getWidth();---------here,"this" means the Jframe
}
}
});
Run Code Online (Sandbox Code Playgroud)
但问题是在这里"这个"并没有引用JFrame.And我甚至无法创建我的JFrame的新对象.因为它会给我另一个窗口.任何人都可以帮我解决这个问题吗?
我相信我在向你寻求帮助之前已完成了我的研究,但我可能忽略了一些东西.
我正在使用Nimbus laf编写一个java UI.我希望在状态改变时更改JSpinner的背景颜色,即,当按下向上或向下按钮时,jspinner中文本字段的背景颜色会改变颜色以表示该值已被更改.
我知道这可以使用OTHER lookandfeels但使用Nimbus不那么容易,例如:
((JSpinner.NumberEditor)jSpinner1.getEditor()).getTextField().setBackground(color.yellow);
我还研究过实际更改UI管理器的颜色主题,但我只想在操作发生时更改颜色,而不是仅在默认情况下改变整体颜色. 在这里或这里
这有可能吗?我从哪里开始?
如果做不到这一点,我希望只是改变一个按钮的颜色:
jButton.setBackground(Color.yellow);
这很容易,但由于默认颜色是绘制的渐变,我该如何将其更改为?
真的希望那里的人知道或可以提供帮助.
非常感谢提前!
我有以下代码:
import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
import java.util.Locale;
public final class ChineseCharacterDemo {
public static void main(String[] args) throws UnsupportedEncodingException {
Locale locale = new Locale("zh", "CN");
System.out.println(locale.getDisplayLanguage(Locale.SIMPLIFIED_CHINESE));
}
}
Run Code Online (Sandbox Code Playgroud)
甚至在将Eclipse控制台的字符编码设置为UTF-8后,我得到的是框,而不是以下内容:
??
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
将Eclipse控制台字体更改为能够呈现中文字符的内容后,我得到以下不正确的显示:
但是,当我在这里复制/粘贴文本时,它会正确呈现简体中文文本.再一次,这里发生了什么?实际上,如果你在控制台中查看渲染文本,它是正确的字符,但它们就在他们身边!
所以,事实证明我需要做以下事情:
我想创建一个带圆角的自定义边框.
代码 -
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Insets;
import java.awt.RenderingHints;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
import javax.swing.border.AbstractBorder;
class JRoundedCornerBorder extends AbstractBorder
{
private static final long serialVersionUID = 7644739936531926341L;
private static final int THICKNESS = 5;
JRoundedCornerBorder()
{
super();
}
@Override
public void paintBorder(Component c, Graphics g, int x, int y, int width, int height)
{
Graphics2D g2 = (Graphics2D)g.create();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
if(c.hasFocus())
{
g2.setColor(Color.BLUE);
}
else
{
g2.setColor(Color.BLACK);
} …
Run Code Online (Sandbox Code Playgroud) 我正在尝试安装Sea Glass Look and Feel.我想使用属性文件安装/配置LaF,但是概述此过程的教程非常混乱.
话虽这么说,任何人都可以提供有关使用属性文件安装/配置自定义LaF的简单分步指南吗?