我在java中使用以下代码创建了一个jframe。这是创建给定URL中传递的图像的自定义图标。但它的尺寸非常小我可以将它的形状从矩形改为圆形帮助
class newframe extends JFrame
{
Container cp;
newframe()
{
cp=this.getContentPane();
cp.setLayout(null);
}
public static void main(String args[])
{
newframe frm= new newframe();
frm.setbounds(0,0,1000,800);
frm.setVisible(true);
ImageIcon im1= new ImageIcon("path upto image");
frm.setIconImage(im1.getImage());
}
}
答案 0 :(得分:1)
您无法更改Icon
的{{1}}大小,因为T JFrame
的属性来自op-Level Container
,AFAIK,因为
图标可以
a)Native OS
所有可用区域
b)fill
比可用区域
c)smaller
图标可见,因为它大于可用区域
only part of
的尺寸是平台敏感的(Icon
,WinXP == 16 x 16
取决于当前主题Win7
或16 x 16
)
有两个Custom Look and Feels对32 x 32
的属性实施自己的注入来自Top-Level Container
,其中一个是Native OS
,第二个并不重要提到,因为触摸了阴影区域,并且需要删除工具栏并返回修改后的(脏黑客)
Substance L&F
的{{1}}的无法更改JFrame
JSR296 in Netbeans
,因为此Swing框架可以覆盖并保护一些重要方法,覆盖Icon
(请不要这样做,需要大量的黑客攻击,结果只有Top-Level Containers
(没有竞争的透明窗口)没有RootPane
,无法返回)
答案 1 :(得分:0)
仅限WINDOWS 7!
当您将宽度设置为32x32像素时,超级栏中JFrame窗口的图标会更大。它是这个尺寸,因为当它不是32x32时,它只显示16x16像素。