PDA

View Full Version : load کردن Image در JFrame



JaVa/sUn
شنبه 14 خرداد 1390, 17:25 عصر
سلام دوستان .
چه طور میشه توی تابع paint در یک Image ،JFrame لود کرد؟من می خواهم عکسم روی متغیر گرافیکی که ورودی paint هست لود و اجرا بشه.
برای JApplet این دستور هست اما توی JFrame نمیشه این کارو کرد:

import java.awt.Graphics;
import java.awt.Image;


Image back;
Graphics gr;
Image mg;
public void init() {
super.init();

back = createImage(getWidth(), getHeight());
gr = back.getGraphics();
mg=getImage(getDocumentBase(),"pic.jpg");
}
public void paint(Graphics g) {

Graphics sc = (Graphics) g;
super.paint(gr);
gr.drawImage(mg,0, 0, getWidth(), getHeight(),this);
sc.drawImage(back, 0,0, this);

}

این دستوره توی فریم جواب نمیده!
چه دستوری استفاده کنم؟ می خواهم Image بسازم .نه Icon یاImageIcon

منتظر راهنمایی شما دوستان هستم.:لبخندساده:
مرسی

persianshadow
شنبه 14 خرداد 1390, 18:30 عصر
خب برای اینکه یک تصویر رو بخونید کافیه از کلاس ImageIO استفاده کنید به این شکل که :‌



BufferedImage buffer = ImageIO.read(file);


نکته اینجاست که این کلاس به شما یک BufferedImage میده که مشکلی نیست و شما می‌تونید اون رو به کلاس Image تبدیل [cast]

کنید و به سادگی اون رو ترسیم کنید.

JaVa/sUn
شنبه 14 خرداد 1390, 22:49 عصر
واقعا ممنون .خیلی خیلی کمکم کرد.نمیدونید چقدر دنبالش بودم.
(دکمه تشکر کافی نبود)