导航:首页 > 编程语言 > javaswing修改图标

javaswing修改图标

发布时间:2024-09-30 02:27:08

java swing 创建带图标的按钮

jButton.setBounds(0,0,85,82);
ImageIconicon=newImageIcon("E:\workspace\weixin-admin-pom\src\main\java\com\swing\dl.png");
Imagetemp=icon.getImage().getScaledInstance(jButton.getWidth(),
jButton.getHeight(),icon.getImage().SCALE_DEFAULT);
icon=newImageIcon(temp);
jButton.setIcon(icon);

Ⅱ java swing 怎么在多级菜单项上加图标

JMenu和JMenuItem一样都有setIcon函数,用setIcon函数就可以设置图标.
例如:
JMenu file=new JMenu("文件");
ImageIcon logo=new ImageIcon("logo.gif"); //这里定义一个Icon图片
file.setIcon(logo); //这里设置Icon图片到JMenu

Ⅲ Java 改变按钮外观

通常swing自定义组件继承javax.swing.JComponent并重写protected void paintComponent(Graphics g)方法实现自定义绘制。 重写paintComponent方法时通常要先去掉super.paintComponent(g),因为父方法调用会绘制背景色。不妨先看一下源代码中的调用过程。

在JComponent.java中paintComponent(Graphics g)方法定义如下:

protected void paintComponent(Graphics g) {
if (ui != null) {
Graphics scratchGraphics = (g == null) ? null : g.create();
try {
ui.update(scratchGraphics, this);
}
finally {
scratchGraphics.dispose();
}
}
}

其中ui的声明如下
protected transient ComponentUI ui;
然后转向ComponentUI的update(Graphics g, JComponent c)方法:

public void update(Graphics g, JComponent c) {
if (c.isOpaque()) {
g.setColor(c.getBackground());
g.fillRect(0, 0, c.getWidth(),c.getHeight());
}
paint(g, c);
}

可见如果发现组件是非透明的,就绘制背景,可以看出swing组件的setBackground方法如何绘制背景的。

一般简单的自定义组件,你可以只通过重写paintComponent方法来实现绘制,对于一般的组件这已经足够。对于自定义按钮一般的原则是准备4张背景图对应上述4种状态,这4种状态都可通过鼠标监听来感知,当状态改变时,调用repaint()使Button重绘。除了背景,按钮文本、图标等的改变一样也必须调用repaint()来刷新。

然后重要的一点是你必须重写public Dimension getPreferredSize()来获得按钮的最佳尺寸。getPreferredSize方法对于布局管理器来说至关重要,布局管理器会通过getPreferredSize的判断组件的最佳大小,并进行布局。而对于本范例而言,getPreferredSize的大小只和背景图片大小有关。

对于业务,尽量做到前台界面与后来业务分离。你可以自定义按钮动作监听器来实现,本例是沿用swing的Action实现,当鼠标抬起时,构造一个ActionEvent对象,然后交给Action成员的actionPerformed(ActionEvent e)处理。

Ⅳ java:求一个用swing来做小程序,我是用来修改配置文件用的,求代码谢谢

XML文件(e:\data\dbconfigure.xml):
<?xml version="1.0" encoding="UTF-8"?>
<CONFIGUREDATA>
<CONFIGURE TYPE="SQL Server 2005">
<DRIVER>com.microsoft.sqlserver.jdbc.SQLServerDriver</DRIVER>
<URL>jdbc:sqlserver://localhost:1433;DatabaseName=DBName</URL>
<USERID>sa</USERID>
<PASSWORD>123</PASSWORD>
</CONFIGURE>
</CONFIGUREDATA>

Java程序(Test.java):

import java.io.File;
import java.io.FileOutputStream;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class Test{
public static void main(String[] args){
try{
String filepath = "E:\\data\\dbconfigure.xml";

File file = new File(filepath);
SAXBuilder builder = new SAXBuilder();
Document document = (Document) builder.build(file);
Element root = document.getRootElement();
Element elem1 = root.getChild("CONFIGURE");

//修改密码
elem1.getChild("PASSWORD").setText("123456");

//写回XML文件
Format format=Format.getRawFormat();
format.setEncoding("UTF-8");
XMLOutputter output=new XMLOutputter(format);
output.output(document, new FileOutputStream(filepath));
}
catch(Exception e){
e.printStackTrace();
}
}
}

Swing省略。

Ⅳ 在 Java Swing 中,怎么设置 JButton 的背景图片

ImageIconicon=newImageIcon("my.jpg");//读取来图片作为源图标
JButtonbtn=newJButton();//新建按钮
btn.setIcon(icon);//为按钮设置图标

阅读全文

与javaswing修改图标相关的资料

热点内容
在vb中如何找个数据库 浏览:337
word文件取消标题三角 浏览:938
小米5当前没有网络连接无法更新 浏览:497
图片变成了数据怎么打开 浏览:765
如何取消电脑连接上的网络 浏览:293
实时监控云路径下文件变化 浏览:238
为什么文件不在任务栏显示 浏览:143
新凌志灯光仪怎么把灯光数据变大 浏览:66
微信红包老是发 浏览:689
快充不用原装数据线会怎么样 浏览:179
java获取当前session 浏览:30
linux系统内查找文件 浏览:972
网络课堂怎么报名 浏览:224
苹果6s怎么打印文件 浏览:467
现在找工作的app哪个好 浏览:433
数据电文申报怎么写 浏览:133
5s没有id密码怎么刷机 浏览:947
微信美女卷发背影图片 浏览:60
一个g照片文件有多少平方 浏览:411
数控编程3d制图软件有哪些 浏览:611

友情链接