① 用java:我有一个JComboBox(组合框)、JLabel(装图片的)两控件。
以下程序经过了测试,供你参考:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class MyGUI extends JFrame implements ItemListener{
JComboBox cmbIndex;
JLabel lblImage;
String[] index = new String[]{"1", "2", "3"};
String[] location = new String[]{"D:\\image1.jpg", "D:\\image2.jpg", "D:\\image3.jpg"};
public MyGUI(){
super("图片选择");
cmbIndex = new JComboBox(index);
ImageIcon image = new ImageIcon(location[0]);
lblImage = new JLabel(image);
this.add(cmbIndex);
this.add(lblImage);
cmbIndex.addItemListener(this);
this.setLayout(new FlowLayout());
this.setSize(200, 200);
this.setVisible(true);
}
public void itemStateChanged(ItemEvent e) {
int index = Integer.parseInt(e.getItem().toString()) - 1;
ImageIcon image = new ImageIcon(location[index]);
lblImage.setIcon(image);
}
}
public class TestChangeImage {
public static void main(String[] args) {
MyGUI obj = new MyGUI();
}
}
② Java swing如果做一个背景图片。如何在图片上显示控件
如果是背景图片的话,
重写paintComponent(Graphics g)这个方法,可以生成
protected void paintComponent(Graphics g) {
g.drawImage(图片对象.getImage(), 0, 0, this);
super.paintComponent(g);
}
.
如果还在要在图片上显示控件,可以考虑JLayeredPane
在这个上面分层放控件。
用label放一张图片,与窗体大小一样。放在最底层,控件放在上面一层。
③ java的swing中用谁什麽控件来装一张图片
Jlabel picture = new JLable("pictureURL");
add (picture);
就可以了。这是一般的做法。
如果高级的可以用图像编程去做,就是重写graphic()方法。
这就要好好看书了。
④ JAVA 图片控件问题
你自己看吧 以前练习的一个小程序 实现了打开本地的jpg图像文件 并改变它的大小 其他类型的图像文件也能打开
import java.awt.*;
import java.awt.event.*;
public class ImageViewer extends Frame {
//图像文件的打开 图像的缩放 打开本地资源dialog的使用
ImageViewer view = this;
Image image = null;
String dir = "";
public ImageViewer() {
super();
this.setTitle("ImageViewer");
this.setBounds(0, 0, 600, 500);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
MenuBar mb = new MenuBar();
this.setMenuBar(mb);
Menu m = new Menu("菜单");
mb.add(m);
MenuItem mi1 = new MenuItem("打开文件");
mi1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
FileDialog fd = new FileDialog(view, "打开图像", FileDialog.LOAD);
fd.setFile("*.jpg");
fd.setDirectory(dir);
fd.setVisible(true);
String f = fd.getFile();
dir = fd.getDirectory();
if(f != null) {
image = Toolkit.getDefaultToolkit().getImage(dir + fd.getFile());
image = image.getScaledInstance(600, 500, Image.SCALE_SMOOTH);
}
view.repaint();
}
});
MenuItem mi2 = new MenuItem("退出");
mi2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
m.add(mi1);
m.add(mi2);
}
private void init() {
System.out.println(1);
}
public void paint(Graphics g) {
if(image != null) {
g.drawImage(image, 0, 0, this);
}
}
public static void main(String args[]) {
new ImageViewer();
}
}
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
vaela
⑤ java上什么控件可以加图片啊 怎么加请写上方法 谢谢了
ImageIcon buttonIcon1 = new ImageIcon("on.gif");
JButton b1 = new JButton("First Button", buttonIcon1);
b1.setMnemonic(KeyEvent.VK_F);
给按钮加图片
⑥ 用java如何实现 在文本框中显示图片
下面是可以运行的例子:
publicvoidtestImageMail(){
//创建和环境有关的Session对象.该session对象中包含了连接邮件服务器的地址..端口..协议
Propertiesproperties=newProperties();
//指定发送的协议
properties.setProperty("mail.transport.protocol","smtp");
//指定邮件服务器的地址
properties.setProperty("mail.host","127.0.0.1");
//通过javamail发送邮件的时候,会把具体的发送命令打印出来
properties.setProperty("mail.debug","true");
Sessionsession=Session.getDefaultInstance(properties);
//创建一个代表一封邮件的Message对象
Messagemessage=newMimeMessage(session);
//设置发件人...
try{
message.setFrom(newInternetAddress("xxxxxx"));
/**BCC:密送CC:抄送To:发送*/
message.setRecipient(RecipientType.TO,newInternetAddress("xxxxxx"));
//设置邮件的主题
message.setSubject("这是一个简单的邮件");
Multipartmultipart=newMimeMultipart("mixed");
//创建一个装显示图片的html
MimeBodyParthtml=newMimeBodyPart();
//要使用cid来指定具体的资源id
html.setContent("<imgsrc='cid:xxxxxxx'>","text/html");
//创建一个图片的mimebodypart
MimeBodyPartimage=newMimeBodyPart();
//将一个图片做具体的数据出过来
image.setDataHandler(newDataHandler(newFileDataSource(newFile("F:\xxx.gif"))));
image.setContentID("xxxxxxx");
multipart.addBodyPart(html);
multipart.addBodyPart(image);
//设置一个复杂类型的邮件内容
message.setContent(multipart);
//可以通过Session对象找得到发送对象Transport...
Transporttransport=session.getTransport();
//通过发送对象去连接邮件服务器...提供链接服务器的用户名而不是邮件的地址,不带@符号的
transport.connect("xxxxxx","xxxxxx");
//连接上后发送邮件(Message),发送给指定的地址
transport.sendMessage(message,message.getAllRecipients());
//关闭连接
transport.close();
}catch(Exceptione){
e.printStackTrace();
}
}
⑦ 如何用java将图片读入xml并读出显示在相应的控件上
说下我的思路,可以将图片先经过base64转码,然后和图片信息一起以xml形式进行封装。需要显示图片的地方再对base64进行反转,生成图片对象。
⑧ 在java applet 中显示一张图片,可以拖动,但会遮住控件
这个说明你画图片在控件的上方咯,当然是会遮住的,你得repaint