我们可以使用一个列表来初始化窗口图标,使用Window.set图标(列表
这段代码将64个不同大小的图像(从16x16增加2)转换为列表的图标。
import java.awt.*;
import java.awt.image.BufferedImage;
import java.util.ArrayList;
import java.util.Vector;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
public class FrameIconList {
public static BufferedImage getImage(int size, Color color) {
BufferedImage i = new BufferedImage(
size, size, BufferedImage.TYPE_INT_RGB);
Graphics2D g = i.createGraphics();
g.setColor(color);
g.fillRect(0, 0, size, size);
g.setColor(Color.BLACK);
int off = (size>17 ? 3 : 1);
if (off>1) g.drawRect(0, 0, size-1, size-1);
g.drawString("" + size, off, size-off);
g.dispose();
return i;
}
public static void main(String[] args) {
final Color[] colors = {
Color.GREEN,
Color.RED,
Color.YELLOW,
Color.WHITE,
Color.CYAN,
Color.MAGENTA,
Color.PINK,
Color.ORANGE
};
int s = 64;
final int[] sizes = new int[s];
for (int ii=0; ii<sizes.length; ii++) {
sizes[ii] = 16+(ii*2);
}
Runnable r = new Runnable() {
@Override
public void run() {
// the GUI as seen by the user (without frame)
JPanel gui = new JPanel(new BorderLayout());
gui.setBorder(new EmptyBorder(2, 3, 2, 3));
gui.setBackground(Color.WHITE);
ArrayList<BufferedImage> images = new ArrayList<BufferedImage>();
Vector<ImageIcon> icons = new Vector<ImageIcon>();
for (int ii=0; ii< sizes.length; ii++) {
BufferedImage bi = getImage(
sizes[ii],
colors[ii%colors.length]);
images.add(bi);
ImageIcon imi = new ImageIcon(bi);
icons.add(imi);
}
JList list = new JList(icons);
list.setVisibleRowCount(6);
gui.add(new JScrollPane(list));
JFrame f = new JFrame("Icon size usage");
f.setIconImages(images);
f.add(gui);
// Ensures JVM closes after frame(s) closed and
// all non-daemon threads are finished
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// See http://stackoverflow.com/a/7143398/418556 for demo.
f.setLocationByPlatform(true);
// ensures the frame is the minimum size it needs to be
// in order display the components within it
f.pack();
// should be done last, to avoid flickering, moving,
// resizing artifacts.
f.setVisible(true);
}
};
// Swing GUIs should be created and updated on the EDT
// http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html
SwingUtilities.invokeLater(r);
}
}
在Mac OS X 10.9(Mavericks)中运行时,似乎没有框架或对接图标:
此外,活动监视器中没有图标:
@mKorbel嗯。。没有意识到会有不同。嗯,用户/操作系统首选项规则高于程序员的期望!;)
>
答案只是关于Win8(ent,64b….)/WinXP(未提及,但设置非常相似)
还有另一个选项,请参阅错误或功能:Swing默认gui字体对于@kleopatra的Win6不正确,等等
可以在win8的桌面上设置64x64图标
例如,我的设置(不是高级图形个性化,尽管事实上我是Win2008/12管理员,blablabla-
"离开了反向配色的保证主义,现在只有黑色
注:@bobbel报告Windows 10使用相同的大小。
基本上,我如何生成这个?我很确定这是的工作,但是我无法理解如何正确地调整操作窗格与菜单栏的大小。红色的 请注意,第二条红线应该正好是框架下半部高度的三分之一。 这是我的最新尝试,通过尝试使用3x6网格(c是GridBagConstraint对象,字符肖像包含所有肖像,当前屏幕是“动作窗格”): 取而代之的是,这将在象限的底部三分之一产生每个肖像,并且操作窗格占据中心列的5/6,而不是我想要的4/6
本文向大家介绍Java的Struts框架中append标签与generator标签的使用,包括了Java的Struts框架中append标签与generator标签的使用的使用技巧和注意事项,需要的朋友参考一下 append 标签: 这些append标签需要两个或两个以上的列表作为参数,并追加它们放在一起,如下图所示: 如果有两个列表A和B的值A1,A2和B1,B2。合并列表,会给你的A1,A2,
问题内容: 测试UI很困难。您认为Swing的最佳单元测试框架是什么? 问题答案: 我认为目前最好的是FEST。
本文向大家介绍Python的Django框架中if标签的相关使用,包括了Python的Django框架中if标签的相关使用的使用技巧和注意事项,需要的朋友参考一下 {% if %} 标签检查(evaluate)一个变量,如果这个变量为真(即,变量存在,非空,不是布尔值假),系统会显示在 {% if %} 和 {% endif %} 之间的任何内容,例如: {% else %} 标签是可选的: Py
问题内容: 所以我有一个带有复选框的JTable。我想让复选框 在“选中”时包含一个图像,而在“未选中”时包含另一个图像 (即,显示图像而不是选中或未选中的框)。是否 有办法做到这一点?我试着用TableCellRenderer愚弄它 返回带有ImageIcon的JLabel,但是它并不是非常有效。 更具体地说,当复选框处于选中状态或未选中状态时,右侧的图像 就会出现,但是当用户更改复选框状态(鼠
虽然这可能看起来并不明智,但我建议你使用 style-loader 将第三方 CSS 库导入 webpack,其实这一点我们已经为你做了。 使用案例 假设你要为你的程序使用 bootstrap、bulma 或者 materialize。你可以仍旧像通常情况下一样,从 npm 安装你的库,而不是将资源附加到 index.ejs 上,我们将在我们的 JavaScript 中导入 CSS,具体在 src