User Tools

Site Tools


swing:labels

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
swing:labels [2015/05/02 10:46] gthanosswing:labels [Unknown date] (current) – external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
-====== Labels ======+====== Labels  - Η κλάση JLabel ======
  
-Μέχρι τώρα είδαμε πως μπορείτε να προσθέσετε ένα κουμπί σε ένα JFrame. Εάν θέλετε να προσθέσετε κάποιο κείμενο σε ένα JFrame θα χρειαστείτε ένα label (JLabel) για να το κάνετε όπως παρακάτω:+Μέχρι τώρα είδαμε πως μπορείτε να προσθέσετε ένα κουμπί σε ένα αντικείμενο της κλάσης [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JFrame.html|javax.swing.JFrame]]. Εάν θέλετε να προσθέσετε κείμενο ή εικόνα χωρίς να υπάρχει αλληλεπίδραση με αυτό θα χρειαστείτε ένα label ([[http://docs.oracle.com/javase/7/docs/api/javax/swing/JLabel.html|javax.swing.JLabel]]) για να το κάνετε όπως παρακάτω:
  
 <code java LabelGreeting.java> <code java LabelGreeting.java>
Line 11: Line 11:
   public LabelGreeting () {   public LabelGreeting () {
     super();     super();
-    setSize(200, 100); +    setTitle("Label Demo"); 
-    setTitle("button with label"); +    JLabel greeting = new JLabel("   How are you?    "); 
-    JLabel greeting = new JLabel("How are you?");+    //JLabel greeting = new JLabel("<html><font size='10' color='red'>How are you?</font></html>"); 
 +    //JLabel greeting = new JLabel(new ImageIcon("howAreYou.jpg")); 
 +    
     add(greeting);     add(greeting);
 +    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 +    pack();
 +    setVisible(true);
   }   }
      
   public static void main(String[] args) {   public static void main(String[] args) {
-    LabelGreeting lg = new LabelGreeting(); +    javax.swing.SwingUtilities.invokeLater(new Runnable() { 
-    lg.setVisible(true);+      public void run() { 
 +       LabelGreeting lg = new LabelGreeting(); 
 +      } 
 +    });
   }   }
 +}
 } }
 </code> </code>
  
 +Ένα αντικείμενο της κλάσης **JLabel** μπορεί να περιέχει κείμενο ή εικόνα ή και τα δύο. Επίσης σε ένα τέτοιο αντικείμενο της κλάσης, στην θέση του κειμένου μπορείτε να προσθέσετε HTML όπως θα δούμε παρακάτω. Εάν προσθέσετε μόνο κείμενο αυτό στοιχίζεται αυτόματα στα αριστερά ενώ εάν προσθέσετε εικόνα αυτή στοιχίζεται αυτόματα στα δεξιά. Σε κάθε περίπτωση μπορείτε να προσδιορίσετε τον τρόπο στοίχισης του περιεχομένου μέσα από τις μεθόδους
 +<code java>
 +void setHorizontalAlignment(int alignment)
 +//Sets the alignment of the label's contents along the X axis.
 +void setVerticalAlignment(int alignment)
 +//Sets the alignment of the label's contents along the Y axis.
 +</code>
 +
 +Εάν ένα αντικείμενο **JLabel** περιέχει κείμενο και εικόνα μπορείτε να προσδιορίσετε την θέση του κειμένου σε σχέση με την εικόνα μέσα από τις μεθόδους
 +<code java>
 +void setHorizontalTextPosition(int textPosition)
 +//Sets the horizontal position of the label's text, relative to its image.
 +void setVerticalTextPosition(int textPosition)
 +//Sets the vertical position of the label's text, relative to its image.
 +</code>
  
 +Στο παραπάνω πρόγραμμα βάλτε σε σχόλια τη γραμμή 9 και βγάλτε από τα σχόλια τις γραμμές 10 ή 11. Δείτε πως αλλάζει το περιεχόμενο του label εάν φορτώσετε μία εικόνα ή γράψετε HTML κείμενο. Προκειμένου να τρέξει το πρόγραμμα επιτυχώς στη γραμμή 11 θα χρειαστείτε την εικόνα {{:swing:howareyou.jpg?200|}}
  
 +| Προηγούμενο: [[:swing:icons | Η κλάση ImageIcon ]] | [[:toc | Περιεχόμενα ]] | Επόμενο: [[:swing:buttons | Buttons, CheckBoxes & RadioButtons ]] |
swing/labels.1430563578.txt.gz · Last modified: 2015/05/02 09:46 (external edit)