Advertisement
blackpab

PO - l1 - GUI

Oct 10th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.35 KB | None | 0 0
  1. package guiclass;
  2.  
  3. import java.awt.BorderLayout;
  4. import java.awt.Container;
  5. import java.awt.FlowLayout;
  6. import java.awt.GraphicsConfiguration;
  7. import java.awt.GridLayout;
  8. import java.awt.event.ActionEvent;
  9. import java.awt.event.ActionListener;
  10. import javax.swing.JButton;
  11. import javax.swing.JFrame;
  12. import javax.swing.JLabel;
  13. import javax.swing.JPanel;
  14. import javax.swing.JScrollPane;
  15. import javax.swing.JTable;
  16. import javax.swing.JTextField;
  17. import javax.swing.table.DefaultTableModel;
  18.  
  19. public class GuiClass extends JFrame implements ActionListener{
  20.     JPanel panelGlowny, panelDanych, panelTabeli, panelPrzyciskow;
  21.     JLabel etykietaNazwa, etykietaX, etykietaY;
  22.     JTextField pTekstoweNazwa, pTekstoweX, pTekstoweY;
  23.     JTable tabela;
  24.     DefaultTableModel modelTabeli;
  25.     JButton przyciskDodaj;    
  26.     Container zawartosc;
  27.  
  28.     public GuiClass(GraphicsConfiguration gc) {
  29.         super(gc);
  30.     }
  31.    
  32.     public GuiClass() {
  33.         //Ustawienia okna
  34.         super("Wektory");
  35.         this.setSize(800, 600);
  36.         this.zawartosc = this.getContentPane(); //pobiera zawartosc ramki
  37.        
  38.         //tworzenie panelow
  39.         this.panelGlowny = new JPanel(new BorderLayout()); //stworzenie Panelu gl
  40.         this.panelDanych = new JPanel(new GridLayout(3,2)); //stworzenie Panelu danych
  41.         this.panelPrzyciskow = new JPanel(new FlowLayout());
  42.         this.panelTabeli = new JPanel(new BorderLayout()); //stworzenie Panelu Tabeli
  43.         this.modelTabeli = new DefaultTableModel(); //stworzenie Stylu tabeli
  44.        
  45.         //tworzenie etykiet
  46.         this.etykietaNazwa = new JLabel("Nazwa Wektora: ");
  47.         this.etykietaX = new JLabel("Wsp. X: ");
  48.         this.etykietaY = new JLabel("Wsp Y: ");
  49.        
  50.         //tworzenie pol tekstowych
  51.         this.pTekstoweNazwa = new JTextField();        
  52.         this.pTekstoweX = new JTextField();        
  53.         this.pTekstoweY = new JTextField();  
  54.        
  55.         //Tworzenie przycisku
  56.         this.przyciskDodaj = new JButton("Dodaj");
  57.         this.przyciskDodaj.addActionListener(this);
  58.        
  59.         //Dodawanie elementow do tabeli        
  60.         this.modelTabeli.addColumn("Nazwa Wektora");
  61.         this.modelTabeli.addColumn("Wsp. X");
  62.         this.modelTabeli.addColumn("Wsp. Y");  
  63.         this.tabela = new JTable(this.modelTabeli);        
  64.        
  65.         //Dodanie Panelow
  66.         this.zawartosc.add(this.panelGlowny);
  67.         this.panelGlowny.add(this.panelDanych, BorderLayout.WEST);
  68.         this.panelGlowny.add(this.panelPrzyciskow, BorderLayout.SOUTH);
  69.         this.panelGlowny.add(this.panelTabeli, BorderLayout.CENTER);
  70.         this.panelTabeli.add(new JScrollPane(this.tabela), BorderLayout.CENTER);
  71.        
  72.        
  73.         //Dodanie pol etykiet i pol tekstowych
  74.         this.panelDanych.add(this.etykietaNazwa);
  75.         this.panelDanych.add(this.pTekstoweNazwa);
  76.        
  77.         this.panelDanych.add(this.etykietaX);
  78.         this.panelDanych.add(this.pTekstoweX);
  79.        
  80.         this.panelDanych.add(this.etykietaY);
  81.         this.panelDanych.add(this.pTekstoweY);
  82.        
  83.         //Dodawanie przycisku
  84.         this.panelPrzyciskow.add(this.przyciskDodaj);
  85.        
  86.        
  87.         this.setDefaultCloseOperation(EXIT_ON_CLOSE);
  88.         this.setVisible(true);
  89.     }    
  90.  
  91.     public static void main(String[] args) {
  92.         GuiClass obiekt = new GuiClass();
  93.  
  94.     }
  95.  
  96.     @Override
  97.     public void actionPerformed(ActionEvent e) {
  98.         if(e.getActionCommand().equals("Dodaj")) {
  99.             Wektory w1 = new Wektory(pTekstoweNazwa.getText(), Integer.parseInt(this.pTekstoweX.getText()), Integer.parseInt(this.pTekstoweY.getText()) );
  100.            
  101.             Object[] tablicaDanych = new Object[3];
  102.             tablicaDanych[0] = w1.getNazwaWektora();
  103.             tablicaDanych[1] = w1.getWspX();
  104.             tablicaDanych[2] = w1.getWspY();
  105.            
  106.             this.modelTabeli.addRow(tablicaDanych);
  107.            
  108.         }  
  109.     }
  110.  
  111. }
  112. /*
  113.     !!! Zrobic interfejs !!!
  114.     a) pola tekstowe do wprowadzania danych + etykiety
  115.     b) utworzyc tabele z danymi
  116.     c) przyciski "dodaj"
  117.     //Ma sie utworzyc nowy obiekt + wpis do tabeli
  118.     //JFrame na zewnatrz
  119.     //JPanel w srodku i zagniezdzone
  120.     //JLabel - etyki
  121.     //JTextField - area txt
  122.     //JButton - przycisk
  123.     //JTable - tabela // + klasa DefaultTableModel
  124. */
  125.  
  126.  
  127.  
  128. /* ---------------------------------------------------- */
  129.  
  130. /*
  131.  * To change this license header, choose License Headers in Project Properties.
  132.  * To change this template file, choose Tools | Templates
  133.  * and open the template in the editor.
  134.  */
  135. package guiclass;
  136.  
  137. /**
  138.  *
  139.  * @author student
  140.  */
  141. public class Wektory {
  142.  
  143.     private String nazwaWektora;
  144.     private int wspX, wspY;
  145.  
  146.     public String getNazwaWektora() {
  147.         return nazwaWektora;
  148.     }
  149.  
  150.     public void setNazwaWektora(String nazwaWektora) {
  151.         this.nazwaWektora = nazwaWektora;
  152.     }
  153.  
  154.     public int getWspX() {
  155.         return wspX;
  156.     }
  157.  
  158.     public void setWspX(int wspX) {
  159.         this.wspX = wspX;
  160.     }
  161.  
  162.     public int getWspY() {
  163.         return wspY;
  164.     }
  165.  
  166.     public void setWspY(int wspY) {
  167.         this.wspY = wspY;
  168.     }
  169.  
  170.     public Wektory(String nazwaWektora, int wspX, int wspY) {
  171.         this.nazwaWektora = nazwaWektora;
  172.         this.wspX = wspX;
  173.         this.wspY = wspY;
  174.     }
  175. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement