java设置文本框位置JL图片位置

不炼金丹不坐禅, 不为商贾不耕田. 闲来写就青山卖, 不使人间造业钱.
第一个Java程序,简单的打开图片并显示在面板上
代码如下:
1 import java.awt.C
2 import java.awt.EventQ
3 import java.awt.G
4 import java.awt.event.*;
5 import java.io.*;
6 import javax.swing.*;
8 public class HelloWorld {
* @param args
public static void main(String[] args) {
// TODO Auto-generated method stub
EventQueue.invokeLater(new Runnable() {
public void run() {
// TODO Auto-generated method stub
JFrame frame = new ImageViewerFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
28 class ImageViewerFrame extends JFrame{
public ImageViewerFrame(){
setTitle("ImageViewer");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
label = new JLabel();
add(label);
chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
JMenuBar menubar = new JMenuBar();
setJMenuBar(menubar);
JMenu menu = new JMenu("File");
menubar.add(menu);
JMenuItem openItem = new JMenuItem("Open");
menu.add(openItem);
JMenuItem exitItem = new JMenuItem("Close");
menu.add(exitItem);
openItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int result = chooser.showOpenDialog(null);
if(result == JFileChooser.APPROVE_OPTION){
String name = chooser.getSelectedFile().getPath();
label.setIcon(new ImageIcon(name));
exitItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.exit(0);
private JL
private JFileC
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 400;
显示效果如下:
FROM: http://www.cnblogs.com/maowang1991/archive//2837279.html
没有更多推荐了,java判断如何当你点击了jb1(按钮)然后点击jl1(标签)的时候出现我想要的图片_百度知道
java判断如何当你点击了jb1(按钮)然后点击jl1(标签)的时候出现我想要的图片
我想知道的是鼠标点击的消息响应里当我点击了jb1(按钮)当我再次点击jl1(标签)的时候,在我点击的地方出现图片1,如果我点击了jb2(按钮)当我再次点击jl1(标签)的时候,在我点击的地方出现图片2。
我有更好的答案
你说的是js么?你可以加个全局变量,当点击了jb1后,给全局变量复制,当点击jl1时,判断全局变量是否是赋值,然后在判断是否出现图片:js这样写:&script&
var a=0;function jb1(){
a=1;}function jl1(){
a=0;//出现后,再次将a设置成0.
}}&script&思路是这么个思路,具体在怎么写,根据自己情况写,如果我说的不是你要的效果,你多贴点代码,给你解决。
代码太多贴不上来
采纳率:51%
来自团队:
&input type=&hidden& name=&bz& id=&bz& value=&&&1 当点击jl1的时候,得到bz的值,如果值是true,那么出现出现我想要的图片12 如果值是false,那么出现出现我想要的图片2(当你点击 jb1后,设置bz的值是true,当你点击 jb2后,设置bz的值是false)
为您推荐:
其他类似问题
java的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。java图形化界面中如果我要设置四个按钮,然后摁每个按钮可以切换不同的图片,谁能帮我做一下代码给我参考_百度知道
java图形化界面中如果我要设置四个按钮,然后摁每个按钮可以切换不同的图片,谁能帮我做一下代码给我参考
跪求谢谢了
我有更好的答案
参考代码,注意图片的路径,拿不准的话,就使用绝对路径吧import&java.awt.*;import&java.awt.event.*;import&javax.swing.*;//我的图片路径是&src\\images\\1.gif&&.有四张&从1.jpg~~4.jpgpublic&class&ImageDemo&extends&JFrame&{ JLabel& JPanel& public&ImageDemo()&{
jp&=&new&JPanel();
for&(i&=&0;&i&&&4;&i++)&{
if(i&==0){//初始化的时候,默认显示的图片
jl&=&new&JLabel(new&ImageIcon(&src\\images\\&+1+&.gif&));
JButton&jb&=&new&JButton(&第&+(i+1)+&张图&);
int&z&=&i;
//当按钮点击的时候
jb.addActionListener(new&ActionListener()&{
public&void&actionPerformed(ActionEvent&e)&{
//设置jl的图片
jl.setIcon(new&ImageIcon(&src\\images\\&+(z+1)+&.gif&));
jp.add(jb);
this.setLocation(200,&120);
this.setSize(500,200);
this.setLayout(new&BorderLayout());
this.add(jl);
this.add(jp,BorderLayout.SOUTH);
this.setTitle(&图片浏览&);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true); } public&static&void&main(String[]&args)&{
new&ImageDemo(); }}
采纳率:89%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。曾经的携手,似梦中之影------若不离,何泣丶
JAVA之设置背景图片的几种方法
第一种方法,通过JLabel来装载图片。
创建一个ImageIcon对象,来获取背景图片。
ImageIcon img = new ImageIcon("image/img1.png");
创建一个JLabel对象,将图片img载入到JLabel对象中。
JLabel jl_bg = new JLabel(img); //背景
然后,设置jl_bg的位置和大小。
this.jl_bg.setBounds(0, 0, 600, 400); //设置位置和大小,先setLayout(null)一下。
将JLabel对象jl_bg放入分层面板中。
this.getLayeredPane().add(jl_bg, new Integer(Integer.MIN_VALUE));
((JPanel)this.getContentPane()).setOpaque(false); //设置透明
如上代码中,getLayeredPane()获取的是分层面板,将背景图片放置最底层,就可以作为背景图片了。我们知道,在JFrame中还有一个ContentPane容器,如此,放置最底层就会被ContentPane所遮挡,所以,需要添加第二行代码,将此设置为透明。注意,需要对其进行强制转换。
第二种方法,通过paint绘制背景图片。
这种方法也是比较常用的方法,首先需要创建一个BufferedImage对象,并初始化为null。
BufferedImage bg =
然后就是加载背景图片。
bg = ImageIO.read(new File("image/img1.png"));
}catch(Exception e) {
e.printStackTrace();
最后,在重写paint方法,通过drawimage方法,将此背景图片绘制即可。
public void paint(Graphics g) {
g.drawImage(bg, 0, 0, null);
这里最好使用双缓冲,不然可能会有闪屏神马的问题。关于双缓冲,在前面的博文里写过。
没有更多推荐了,Java界面背景图片设置的关键代码
如何让Java图形界面的组件不被背景图片掩盖?
代码并不多,但是除了少数之外,网上搜索的代码多数非常冗余和不得要领,在长时间进行测试之后,我从网上的代码总结了Java的swing界面的背景图片设置的关键代码如下:
///把标签的大小位置设置为恰好填充整个面板
jl.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
//把内容窗格转化为JPanel,否则不能使用setOpaque()方法来使内容窗格透明化
jp1=(JPanel) this.getContentPane();
jp1.setOpaque(false);//////////////////////////////////////////////
jp1.setLayout(new FlowLayout());
jp1.add(jb);
this.getLayeredPane().setLayout(null);/////////////////////////////////////////////
//把内容图片添加到分层窗口的最底层作为背景
this.getLayeredPane().add(jl, new Integer(Integer.MIN_VALUE));
jl是JLabel的对象,即JLabel jl=new JLabel();
jp1是JPanel的对象。
jb是JButton的对象。
我们可以看到,使背景图片不掩盖组件,仅仅只需要加入关键的7行代码,当然是否能再削减一两行我还没试过,但是加入了这几行代码,其他的按照正常方式来编写,背景图片的设置必定能成功,不会出错。当然,其实其中的原理我还是没弄明白。不过能用就行了,对吧?
没有更多推荐了,

我要回帖

更多关于 java设置图片位置 的文章

 

随机推荐