Προς το περιεχόμενο

resize JLabel java


manic

Προτεινόμενες αναρτήσεις

Δημοσ.

εχω σε ενα JLabel μια εικονα θελω να το σμικρυνω και το μεγενθυνω. Στο προγραμμα μου εχω βαλει την εξης εντολη

>myLabel.setPreferredSize(new Dimension(height,width));;

(οπου το height,width ειναι 2 integer) αλλα το μονο που κανει ειναι να "κοβει" τα γυρο γυρο της εικονας, εγω θελω ολη την εικονα απλα μικροτερη και μεγαλυτερη!

Δημοσ.

λοιπον εγω το ειχα κανει ετσι

 

ImageIcon ii = new ImageIcon(εικονα);

jLabel4.setIcon(ii);

jLabel4.repaint();

 

οπου η εικονα μου ηταν σε byte<> αλλα δεχεται και Image αντικειμενο απο οτι θυμαμαι... το εκανε αυτοματα μονο του και δεν ελενχε ουτε υψος ουτε τιποτα

Δημοσ.

το θεμα ειναι οτι εγω θελω να το κανω μονος μου το resize δλδ με τα 2 height,width να οριζω ποιες θα ειναι οι διαστασεις της καινουργιας εικονας!

Δημοσ.

δηλαδη για να καταλαβω..το μεγεθος θελεις να το βαζει ο χρηστης? γιατι αυτος ο τροπος δουλευε σε μη στατικη εικονα..δηλαδη ηταν ενα φωτογραφικο album καθε στιγμη διαλεγε μια εικοαν ο χρηστης απο τον υπολογιστη.εγω εφτιαχνα ενα καινουργιο αντικειμενο Imageicon και ειχε λυθει ολο το προβλημα..

Δημοσ.

Κάτι τέτοιο?

 

>        //Resizing method
       public ImageIcon resizeImage( int newW, int newH) {
           BufferedImage img = null;
           try {
               img = ImageIO.read(new File("ceidcat.jpg"));
           } catch (IOException e) {}

           int w = img.getWidth();
           int h = img.getHeight();
           BufferedImage dimg = new BufferedImage(newW, newH, img.getType());
           Graphics2D g = dimg.createGraphics();
           g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
           g.drawImage(img, 0, 0, newW, newH, 0, 0, w, h, null);
           g.dispose();
           ImageIcon ic = new ImageIcon(dimg);
           return ic;
       }

Δημοσ.

@ vicky5 εχω μια εικονα μεσα μεσα στο pc μου και θελω ενα οταν ο χρηστης δινει το μεγεθος της με ενα κουμπι που θα παταει να την κανει resize αυτοματα, η εικονα προβαλεται σε ενα flowlayout που εχω φτιαξει. την εβαλα imageicon γιατι δεν εχω μεγαλη γνωση πανω στο αντικειμενο και μονο με αυτην την μεθοδο εχω ξαναδουλεψει!

 

@ javavall εβαλα τον κωδικα αυτον σε μια κλαση και την καλω αλλα μου χτυπαει ο compiler

 

>resizeImage icon = new resizeImage(height,width);

myLabel = new JLabel(icon);// Label που βαζω την εικονα

img.add(myLabel );// το img ειναι ενα JPanel
con.add(img);//το κανω add στον container

 

ο μηνυμα σφαλματος ειναι

 

cannot find symbol - contractor JLabel(resizeImage)

Δημοσ.

Σου έχει ξεφύγει κάτι μάλλον.

 

Χρησιμοποίησε το παρακάτω για να κάνεις resize την εικόνα και να την βάλεις στο label(Όπως πρότεινε και ο vicky5 σε ένα σημείο.)

>
imageLabel.setIcon(resizeImage(w,h));

και πρόσεχε που κάνεις τις δηλώσεις.

Δημοσ.

Σας ευχαριστω ολους πολυ και ειδικερα τον javavall!!! εγινε ακριβως οπως το ηθελα!!!!

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...