Advertisement
Guest User

new LabelPanel

a guest
May 24th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.70 KB | None | 0 0
  1. import javax.swing.*;
  2. import java.io.FileNotFoundException;
  3. import java.io.FileReader;
  4. import java.util.ArrayList;
  5. import java.util.Scanner;
  6.  
  7. public class LabelPanel extends JPanel{
  8.  
  9.     public FileReader fileReader;
  10.     public Scanner scan;
  11.  
  12.     public ArrayList<String> textFromFile = new ArrayList<>();
  13.     public JLabel[] labels = new JLabel[textFromFile.size()];
  14.  
  15.  
  16.     public LabelPanel () {
  17.         setSize(500, 500);
  18.         setLayout(null);
  19.  
  20.         initFileReader();
  21.         getLinesFromFile();
  22.  
  23.         labels = initializeLabels(textFromFile);
  24.         labels = initLabelPos(labels);
  25.         addLabels();
  26.  
  27.         setVisible(true);
  28.     }
  29.  
  30.     private void getLinesFromFile () {
  31.         while (scan.hasNextLine()) {
  32.             textFromFile.add(scan.nextLine());
  33.         }
  34.     }
  35.  
  36.     private void initFileReader () {
  37.         try {
  38.             fileReader = new FileReader("src/TheTextFile.txt");
  39.         } catch (FileNotFoundException e) {
  40.             e.printStackTrace();
  41.         }
  42.         scan = new Scanner(fileReader);
  43.     }
  44.  
  45.     private JLabel[] initializeLabels (ArrayList<String> text) { //TODO
  46.         JLabel[] labels = new JLabel[text.size()];
  47.  
  48.         for (int i = 0; i < labels.length; i++) {
  49.             labels[i] = new JLabel(text.get(i));
  50.         }
  51.  
  52.         return labels;
  53.     }
  54.  
  55.     private JLabel[] initLabelPos (JLabel[] labelArray) {
  56.         int x = 200;
  57.         int y = 50;
  58.  
  59.         for (JLabel label : labelArray) {
  60.             label.setBounds(x, y, 100, 50);
  61.             y += 50;
  62.         }
  63.  
  64.         return labelArray;
  65.     }
  66.  
  67.     private void addLabels () {
  68.         for (JLabel label : labels) {
  69.             add(label);
  70.         }
  71.     }
  72.  
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement