Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class PanelWaluta extends JDialog {
- private JScrollPane scrollPane;
- public static JTable table;
- private JComboBox comboBoxWaluta;
- private JLabel labelZmiennaWaluta, labelWynikWaluta, labelEqaul, labelAutor;
- private JTextField textFieldZmiennaWaluta, textFieldWynikWaluta;
- private double tempEuro, tempPln, tempGbp;
- private String wynik;
- private String fileName = "Hisoria.txt";
- /**
- * @param owner//
- */
- PanelWaluta(JFrame owner) {
- super(owner, "Konwersja Waluty", true);
- setSize(1000, 300);
- setResizable(false);
- setType(Type.UTILITY);
- setLayout(null);
- scrollPane = new JScrollPane();
- scrollPane.setBounds(400, 0, 600, 300);
- scrollPane.setBackground(Color.WHITE);
- add(scrollPane);
- String[] comboBoxItems = {"EURO_Na_PLN", "PLN_Na_EURO", "GBP_Na_PLN", "PLN_Na_GBP"};
- comboBoxWaluta = new JComboBox(comboBoxItems);
- comboBoxWaluta.setSelectedIndex(0);
- comboBoxWaluta.setBounds(25, 50, 350, 20);
- comboBoxWaluta.setAlignmentX(SwingConstants.CENTER);
- add(comboBoxWaluta);
- comboBoxWaluta.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- switch (comboBoxWaluta.getSelectedIndex()) {
- case 0:
- labelZmiennaWaluta.setText("EURO");
- labelWynikWaluta.setText("PLN");
- break;
- case 1:
- labelZmiennaWaluta.setText("PLN");
- labelWynikWaluta.setText("EURO");
- break;
- case 2:
- labelZmiennaWaluta.setText("GBP");
- labelWynikWaluta.setText("PLN");
- break;
- case 3:
- labelZmiennaWaluta.setText("PLN");
- labelWynikWaluta.setText("GBP");
- break;
- }
- changeListener(comboBoxWaluta, textFieldWynikWaluta);
- }
- });
- labelZmiennaWaluta = new JLabel("EURO");
- labelZmiennaWaluta.setBounds(10, 120, 100, 20);
- labelZmiennaWaluta.setHorizontalTextPosition(JLabel.LEFT);
- labelZmiennaWaluta.setHorizontalAlignment(SwingConstants.LEFT);
- add(labelZmiennaWaluta);
- labelWynikWaluta = new JLabel("PLN");
- labelWynikWaluta.setBounds(280, 120, 100, 20);
- labelWynikWaluta.setHorizontalTextPosition(SwingConstants.RIGHT);
- labelWynikWaluta.setHorizontalAlignment(SwingConstants.RIGHT);
- add(labelWynikWaluta);
- labelEqaul = new JLabel("=");
- labelEqaul.setBounds(160, 140, 50, 20);
- add(labelEqaul);
- labelAutor = new JLabel("Łukasz Flis Inofrmatyka/N");
- labelAutor.setBounds(100, 240, 200, 20);
- add(labelAutor);
- textFieldZmiennaWaluta = new JTextField(10);
- textFieldZmiennaWaluta.setBounds(10, 140, 100, 20);
- textFieldZmiennaWaluta.setText("1");
- add(textFieldZmiennaWaluta);
- textFieldZmiennaWaluta.getDocument().addDocumentListener(new DocumentListener() {
- @Override
- public void insertUpdate(DocumentEvent e) {
- changeListener(comboBoxWaluta, textFieldWynikWaluta);
- }
- @Override
- public void removeUpdate(DocumentEvent e) {
- changeListener(comboBoxWaluta, textFieldWynikWaluta);
- }
- @Override
- public void changedUpdate(DocumentEvent e) {
- changeListener(comboBoxWaluta, textFieldWynikWaluta);
- }
- });
- textFieldWynikWaluta = new JTextField(10);
- textFieldWynikWaluta.setBounds(210, 140, 170, 20);
- textFieldWynikWaluta.setHorizontalAlignment(SwingConstants.RIGHT);
- textFieldWynikWaluta.setEditable(false);
- add(textFieldWynikWaluta);
- table = new JTable();
- table.setModel(new DefaultTableModel(
- new Object[][]{},
- new String[]
- {"Z", "Na", "Wartość przed", "Wartośc po", "Data", "Czas"}));
- scrollPane.setViewportView(table);
- table.getTableHeader().setResizingAllowed(false);
- table.getTableHeader().setReorderingAllowed(false);
- table.setEnabled(false);
- }
- void changeListener(JComboBox comboBoxWaluta, JTextField textField) {
- try {
- switch (comboBoxWaluta.getSelectedIndex()) {
- case 0:
- tempEuro = Double.parseDouble(textFieldZmiennaWaluta.getText());
- tempPln = tempEuro * 4.52;
- wynik = String.format("%.2f", tempPln);
- break;
- case 1:
- tempPln = Double.parseDouble(textFieldZmiennaWaluta.getText());
- tempEuro = tempPln / 4.52;
- wynik = String.format("%.2f", tempEuro);
- break;
- case 2:
- tempGbp = Double.parseDouble(textFieldZmiennaWaluta.getText());
- tempPln = tempGbp * 4.99;
- wynik = String.format("%.2f", tempPln);
- break;
- case 3:
- tempPln = Double.parseDouble(textFieldZmiennaWaluta.getText());
- tempGbp = tempPln / 4.99;
- wynik = String.format("%.2f", tempGbp);
- break;
- default:
- break;
- }
- textField.setText(wynik);
- DefaultTableModel model = (DefaultTableModel) table.getModel();
- LocalDate date = LocalDate.now();
- LocalTime time = LocalTime.now();
- model.insertRow(0,
- new Object[] {labelZmiennaWaluta.getText(),
- labelWynikWaluta.getText(),
- textFieldZmiennaWaluta.getText(),
- textFieldWynikWaluta.getText(),date,time}
- );
- } catch(Exception e) {
- textField.setText("Użyj separatora 'kropka' -> .");
- }
- }
- /* public String zapisTabeli () {
- DefaultTableModel model = (DefaultTableModel) table.getModel();
- int nRow = model.getRowCount(), nCol = model.getColumnCount();
- Object [][] tableData = new Object[nRow][nCol];
- for (int i=0; i<nRow; i++) {
- for (int j=0; j<nCol; j++) {
- tableData [i][j] = model.getValueAt(i, j);
- }
- }
- return String.valueOf(tableData);
- }*/
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement