معاينة الصورة في المكون JFileChooser قبل فتحها
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
معاينة الصورة في المكون JFileChooser قبل فتحها
اليوم سوف أعطي مثالًا بسيطًا من شأنه أن يساعدك على تعلم كيفية تطبيق فتح او معاينة الصور فى المكون #JFileChooser كما هو موضح فى الصورة التالية :
و الفكرة بتتلخص فى استخدام #JPanel في #JFilechooser والتي تعرض ملف الصورة المحدد...في كل مرة يختار المستخدم ملف صورة ، سيتم رسم هذه الصورة على تلك اللوحة باستخدام طريقة #paintComponent.....
الشفرة
و الفكرة بتتلخص فى استخدام #JPanel في #JFilechooser والتي تعرض ملف الصورة المحدد...في كل مرة يختار المستخدم ملف صورة ، سيتم رسم هذه الصورة على تلك اللوحة باستخدام طريقة #paintComponent.....
الشفرة
- الكود:
import java.awt.*;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.*;
import javax.imageio.ImageIO;
import javax.swing.*;
public class ImagePreviewFileChooser extends JPanel implements PropertyChangeListener {
private JFileChooser jfc;
private Image img;
public ImagePreviewFileChooser(JFileChooser jfc) {
this.jfc = jfc;
Dimension sz = new Dimension(200, 200);
setPreferredSize(sz);
}
public void propertyChange(PropertyChangeEvent evt) {
try {
System.out.println("updating");
File file = jfc.getSelectedFile();
updateImage(file);
} catch (IOException ex) {
System.out.println(ex.getMessage());
ex.printStackTrace();
}
}
public void updateImage(File file) throws IOException {
if (file == null) {
return;
}
img = ImageIO.read(file);
repaint();
}
public void paintComponent(Graphics g) {
// fill the background
g.setColor(Color.gray);
g.fillRect(0, 0, getWidth(), getHeight());
if (img != null) {
// calculate the scaling factor
int w = img.getWidth(null);
int h = img.getHeight(null);
int side = Math.max(w, h);
double scale = 200.0 / (double) side;
w = (int) (scale * (double) w);
h = (int) (scale * (double) h);
// draw the image
g.drawImage(img, 0, 0, w, h, null);
// draw the image dimensions
String dim = w + " x " + h;
g.setColor(Color.black);
g.drawString(dim, 31, 196);
g.setColor(Color.white);
g.drawString(dim, 30, 195);
} else {
// print a message
g.setColor(Color.black);
g.drawString("Not an image", 30, 100);
}
}
public static void main(String[] args) {
JFileChooser jfc = new JFileChooser();
ImagePreviewFileChooser preview = new ImagePreviewFileChooser(jfc);
jfc.addPropertyChangeListener(preview);
jfc.setAccessory(preview);
jfc.showOpenDialog(null);
}
}
vbcoder- ....
- تاريخ التسجيل : 18/11/2018
المساهمات : 51
النقاط : 81
التقيم : 4
الدولة :
الجنس :
رد: معاينة الصورة في المكون JFileChooser قبل فتحها
كود مهم للغاية
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» Best Signals
» شغالات بالشهر جدة
» اربح من كتابة المقالات مع منصة كيفيات
» مناديل اورجانيك المبللة للأطفال | organyckw
» تركيب اللوح الإعلانية للمحلات | تركيب لوحات الحروف البارزة | كواليتي ميكرز
» اسلوب راقي للمنازل
» إسألي عائشة عن كل ما يخص الجمال
» مميزات اللمسة المنزلية
» قناة العاب ويوميات سيلا