JFrame下開啟圖片 |
尚未結案
|
vespa
一般會員 發表:14 回覆:22 積分:7 註冊:2004-02-13 發送簡訊給我 |
我想在JFrame下開啟一張圖片,程式碼如下,編譯期沒問題,執行卻出現了錯誤訊息。若把JFrame jf1改成Frame jf1再把jf1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
註解,則可順利開啟圖片,但圖片不能關閉,必須在命令提示字元下按Ctrl C。
1.如果要在JFrame下開啟圖片該怎麼修改呢?
2.又,如果想控制jf1的寬與高剛好就是圖片的寬、高,應該如何修改?
我試過setBounds(10,10,imw,imh),但不行... //錯誤訊息
Exception in thread "main" java.lang.Error: Do not use javax.swing.JFrame.add()
use javax.swing.JFrame.getContentPane().add() instead
at javax.swing.JFrame.createRootPaneException(JFrame.java:458)
at javax.swing.JFrame.addImpl(JFrame.java:484)
at java.awt.Container.add(Container.java:307)
at testFrame2.main(testFrame2.java:36) //程式碼
import javax.swing.JFrame;
import java.awt.*;
import java.io.*;
import java.applet.*;
import java.awt.Graphics;
import java.awt.image.*; public class testFrame2 extends JFrame {
static Image _image;
static JFrame jf1;
static int imw,imh;
//construct with a specific image
public testFrame2(Image im) {
this._image = im;
prepareImage(_image,this);
}
//paint
public void paint(Graphics g) {
g.drawImage(_image,0,0,this);
imw = _image.getWidth(this);
imh = _image.getHeight(this);
setSize(imw, imh);
}
public static void main(String args[]){
jf1 = new JFrame();
jf1.setTitle("*** Image Frame ***");
jf1.setBounds(10,10,400,300);
jf1.setVisible(true);
Image _image = Toolkit.getDefaultToolkit().getImage("window.gif");
testFrame cube = new testFrame(_image);
jf1.add(cube);
jf1.show();
jf1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
neoart
版主 發表:22 回覆:582 積分:425 註冊:2003-05-09 發送簡訊給我 |
|
vespa
一般會員 發表:14 回覆:22 積分:7 註冊:2004-02-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |