public ActionUser() {
		atm = new Core();
		setResizable(false);
		
		// Обработка события при открытии окна
		addWindowListener(new WindowAdapter() {
			@Override
			public void windowOpened(WindowEvent arg0) {
				panel.setVisible(false);	// Скрываем панель
				
				
				// Пытаемся подгрузить данные с файла
				try {
					atm.initAccount();
				} catch (FileNotFoundException e) {
					JOptionPane.showMessageDialog(ActionUser.this, R.Not_fount_file_error);
					System.exit(0);
					e.printStackTrace();
				} catch (IOException e) {
					JOptionPane.showMessageDialog(ActionUser.this, R.Unknown_error);
					System.exit(0);
					e.printStackTrace();
				}
				
				int i = 0, n = 3;
				while(i < n) {
					if(chekVerification()) { 		// Если верификация успешана
						panel.setVisible(true);		// Показываем панель и приветствие и выходим из цикла
						label_1.setText(R.Wellcome+atm.getUserName());
						break;
					}
				++i;
				}
				if(i == 3) {
					JOptionPane.showMessageDialog(ActionUser.this, R.Incorrect_password, R.ATM, JOptionPane.WARNING_MESSAGE);
					System.exit(0);
				}	
			}
			
			// Обработка события при выходе (Нажатие на красный крестик)
			@Override
			public void windowClosing(WindowEvent arg0) {
				//Пытаемся сохранить баланса при выходе
				try {
					atm.saveAccount();
				} catch (FileNotFoundException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				//JOptionPane.showMessageDialog(ActionUser.this, "press red cross");
			}
		});
		
		font = new Font("Arial", Font.PLAIN, 16);	// Стандартный шрифт
		
		//setFocusable(true);
		
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 804, 487);
		
		menuBar = new JMenuBar();
		setJMenuBar(menuBar);
		
		menuBar.setVisible(menubarShowHide);
		
		JMenu mnNewMenu_2 = new JMenu(R.Settings);
		menuBar.add(mnNewMenu_2);
		
		// Пункт меню смены шрифта и обработка события
		JMenuItem mntmNewMenuItem_1 = new JMenuItem(R.Font);
		mntmNewMenuItem_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				changeFont();
			}
		});
		mnNewMenu_2.add(mntmNewMenuItem_1);
		
		mnNewMenu = new JMenu(R.Help);
		menuBar.add(mnNewMenu);
		
		// Пункт меню об авторе и обработка события
		JMenuItem mntmNewMenuItem = new JMenuItem(R.About);
		mntmNewMenuItem.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				showAbout();
			}
		});
		mnNewMenu.add(mntmNewMenuItem);
		
		// Пункт меню перезагрузка и обработка события
		JMenu mnNewMenu_1 = new JMenu(R.Reloaded);
		mnNewMenu_1.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent arg0) {
				dispose(); // Освобождаем текущую форму
				//Пытаемся сохранить баланса при выходе
				try {
					atm.saveAccount();
				} catch (FileNotFoundException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				ActionUser frame = new ActionUser();
				frame.setLocationRelativeTo(null);
				frame.setVisible(true);
			}
		});
		menuBar.add(mnNewMenu_1);
		
		JMenu mnExit = new JMenu(R.Exit);
		mnExit.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent arg0) {
				if(JOptionPane.OK_OPTION == 
				   JOptionPane.showConfirmDialog(null,
						   						R.Ask_quit, 
						   						R.Exit, JOptionPane.YES_NO_OPTION)) {
					//Пытаемся сохранить баланса при выходе
					try {
						atm.saveAccount();
					} catch (FileNotFoundException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					System.exit(0);
				}
						   	
			}
		});
		menuBar.add(mnExit);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JPopupMenu popupMenu = new JPopupMenu();
		popupMenu.setLocation(57, 91);
		addPopup(contentPane, popupMenu);
		
		JMenuItem mntmShowMenu = new JMenuItem(R.Menu_item_show_hide);
		mntmShowMenu.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				menuHideShow();
			}
		});
		popupMenu.add(mntmShowMenu);
		
		panel = new Panel();
		panel.setBounds(70, 58, 664, 315);
		contentPane.add(panel);
		panel.setLayout(null);
		
		
		comboBox = new JComboBox<String>(); // Создания списка с выбором валюты
		comboBox.setFont(font);
		comboBox.setBounds(10, 45, 95, 27);
		panel.add(comboBox);
		comboBox.addItem(R.CURRENCY_UAH);
		comboBox.addItem(R.CURRENCY_RUB);
		comboBox.addItem(R.CURRENCY_USD);
		comboBox.addItem(R.CURRENCY_EUR);
		
		label = new JLabel(R.Currency+": ");
		label.setFont(font);
		label.setBounds(10, 10, 95, 29);
		panel.add(label);
		
		// Кнопка снять средства и обработка события
		btnNewButton_1 = new JButton(R.Withdraw_funds);
		btnNewButton_1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				takeMoney();
			}
		});
		btnNewButton_1.setFont(font);
		btnNewButton_1.setBounds(10, 245, 238, 59);
		panel.add(btnNewButton_1);
		
		// Кнопка просмотр баланса и обработка события
		btnNewButton_2 = new JButton(R.Watch_balance);
		btnNewButton_2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				watchBalance();
			}
		});
		btnNewButton_2.setFont(font);
		btnNewButton_2.setBounds(416, 245, 238, 59);
		panel.add(btnNewButton_2);
		
		// Поле для отображения приветствия
		label_1 = new JLabel("");
		label_1.setFont(font);
		label_1.setBounds(189, 10, 445, 27);
		panel.add(label_1);
		
		// Поле для отображения баланса
		lblNewLabel = new JLabel("");
		lblNewLabel.setFont(font);
		lblNewLabel.setBounds(141, 83, 490, 59);
		lblNewLabel.setVisible(false);
		panel.add(lblNewLabel);
		
		// Текстовое поле для ввода суммы 
		/*
		NumberFormat format = NumberFormat.getInstance();
		NumberFormatter formatter = new NumberFormatter(format);
		formatter.setValueClass(Integer.class);
		formatter.setAllowsInvalid(false);
		formatter.setMinimum(0);
		formatter.setMaximum(Integer.MAX_VALUE);
		// If you want the value to be committed on each keystroke instead of focus lost
		formatter.setCommitsOnValidEdit(true);
		*/
		textField = new JFormattedTextField();
		textField.setBounds(141, 153, 187, 50);
		panel.add(textField);
		textField.setColumns(10);
		textField.setFont(font);
		textField.setVisible(false);
		
		
		// Кнопка для продолжения операции снятия средств
		btnNewButton = new JButton(R.String_next);
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				confirmTakeMoney();
			}
		});
		btnNewButton.setBounds(416, 153, 169, 50);
		panel.add(btnNewButton);
		btnNewButton.setVisible(false);
		btnNewButton.setFont(font);
		
		setTitle(R.ATM);
	}