swing 显示图片 并改变图片显示大小
packagePublicControls;importjava.awt.FlowLayout;importjavax.swing.Box;importjavax.swi...
package PublicControls;
import java.awt.FlowLayout;
import javax.swing.Box;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**公共控件 登陆窗口*/
public class Login extends JFrame {
/**
* Launch the application
* @param args
*/
public static void main(String args[]) {
try {
Login frame = new Login();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
/**默认构造方法 不使用任何参数*/
public Login() {
super();
// getContentPane().setLayout(new BoxLayout(getContentPane(), BoxLayout.X_AXIS));
setBounds(100, 100, 450, 140);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
// setResizable(false);
// setUndecorated(false);
final Box bxMain = Box.createHorizontalBox();
bxMain.add(Box.createHorizontalStrut(10));
// bxMain.add(Box.createVerticalStrut(80));
final Box bxIcon = Box.createVerticalBox();
final JButton btTest = new JButton(new ImageIcon("~/Icons/PublicControls"));
bxIcon.add(btTest);
bxMain.add(bxIcon);
// getContentPane().add(lbLoginIcon);
// final JLabel lbUserName = new JLabel();
// lbUserName.setText("用户名");
// getContentPane().add(lbUserName);
// final JLabel lbPassWord = new JLabel();
// lbPassWord.setText("密码");
// getContentPane().add(lbPassWord);
// getContentPane().add(bxMain);\
add(bxMain);
//
}
} 展开
import java.awt.FlowLayout;
import javax.swing.Box;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**公共控件 登陆窗口*/
public class Login extends JFrame {
/**
* Launch the application
* @param args
*/
public static void main(String args[]) {
try {
Login frame = new Login();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
/**默认构造方法 不使用任何参数*/
public Login() {
super();
// getContentPane().setLayout(new BoxLayout(getContentPane(), BoxLayout.X_AXIS));
setBounds(100, 100, 450, 140);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
// setResizable(false);
// setUndecorated(false);
final Box bxMain = Box.createHorizontalBox();
bxMain.add(Box.createHorizontalStrut(10));
// bxMain.add(Box.createVerticalStrut(80));
final Box bxIcon = Box.createVerticalBox();
final JButton btTest = new JButton(new ImageIcon("~/Icons/PublicControls"));
bxIcon.add(btTest);
bxMain.add(bxIcon);
// getContentPane().add(lbLoginIcon);
// final JLabel lbUserName = new JLabel();
// lbUserName.setText("用户名");
// getContentPane().add(lbUserName);
// final JLabel lbPassWord = new JLabel();
// lbPassWord.setText("密码");
// getContentPane().add(lbPassWord);
// getContentPane().add(bxMain);\
add(bxMain);
//
}
} 展开
1个回答
展开全部
final JButton btTest = new JButton(new ImageIcon("~/Icons/PublicControls"));
改为:
ImageIcon ico=new ImageIcon("~/Icons/PublicControls");
ico.setImage(ico.getImage().getScaledInstance(50,20,Image.SCALE_DEFAULT));
final JButton btTest = new JButton(ico);
50为宽度,20为长度。这个问题问的好呀
你的图片地址可能有问题,最好直接写:
ImageIcon ico=new ImageIcon("c:/a.jpg");
之类的
改为:
ImageIcon ico=new ImageIcon("~/Icons/PublicControls");
ico.setImage(ico.getImage().getScaledInstance(50,20,Image.SCALE_DEFAULT));
final JButton btTest = new JButton(ico);
50为宽度,20为长度。这个问题问的好呀
你的图片地址可能有问题,最好直接写:
ImageIcon ico=new ImageIcon("c:/a.jpg");
之类的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询