// Создаем основное окно приложения public fplAmount () { setTitle ("Сумма прописью"); setFont (new Font ("Helvetica", Font.PLAIN, 12)); // Разместить компоненты в основном окне JLabel currLabel = new JLabel (" Валюта ", JLabel.RIGHT), summaLabel = new JLabel (" Сумма ", JLabel.RIGHT); currBox = new JComboBox (cv); summaField = new JTextField ("0.00", 12); JButton convertButton = new JButton ("Преобразовать"); JPanel lPanel = new JPanel (new GridLayout (2, 1)), rPanel = new JPanel (new GridLayout (2, 1)), topPanel = new JPanel (new BorderLayout ()), botPanel = new JPanel (new FlowLayout (FlowLayout.RIGHT)); lPanel.add (currLabel); lPanel.add (summaLabel); rPanel.add (currBox); rPanel.add (summaField); topPanel.add (lPanel, BorderLayout.WEST); topPanel.add (rPanel, BorderLayout.CENTER); botPanel.add (convertButton); getContentPane ().add (topPanel, BorderLayout.CENTER); getContentPane ().add (botPanel, BorderLayout.SOUTH); pack (); setSize (getPreferredSize ().width, getPreferredSize ().height); setResizable (true); // Вывести основное окно в центре экрана монитора Dimension sSize = Toolkit.getDefaultToolkit ().getScreenSize (); Dimension fSize = getSize (); if (fSize.height > sSize.height) fSize.height = sSize.height; if (fSize.width > sSize.width) fSize.width = sSize.width; setLocation ((sSize.width - fSize.width)/2, (sSize.height - fSize.height)/2); setVisible (true); // Обработчик события нажатия на кнопку "Преобразовать" convertButton.addActionListener (new ActionListener () { public void actionPerformed (ActionEvent e) { // Определить код выбранной валюты из выпадающего списка String code = currBox.getSelectedItem ().toString (); // Массив суффиксов - окончаний. Элементы массива: // 0...5 - строки целой и дробной частей; // 6 - род валюты (M - мужской, F - женский) String [] suff = {"", "", "", "", "", "", ""}; // Выбрать из таблицы настроечную информацию, // касающуюся данной валюты try { Statement stmt = conn.createStatement (); ResultSet rset = stmt.executeQuery ("select i1,i24,i5,r1,r24,r5,Sex from currency where id_currency=" + code); ResultSetMetaData meta = rset.getMetaData (); int cols = meta.getColumnCount (); // Занести настроечную информацию в массив while (rset.next ()) { for (int i = 0; i < cols; i++) suff [i] = rset.getString (i + 1); } } catch (SQLException sqle) { System.out.println ("SQL exception:" + sqle.getMessage ()); System.out.println ("SQLState:" + sqle.getSQLState ()); System.out.println ("VendorError:" + sqle.getErrorCode ()); System.exit (-1); } catch (Exception sqle) {sqle.printStackTrace ();} // Перевести число в строку !!! new jAmount (suff, summaField.getText ()); } }); addWindowListener (new WindowAdapter () { public void windowClosing (WindowEvent event) { System.exit (0); } }); }