|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.03.2015, 01:51 | #1 |
Новичок
Джуниор
Регистрация: 30.04.2012
Сообщений: 2
|
Software Quality Environment(Java)
Прошу помощи и совета в исправлении исходного кода (Java), при помощи Software Quality Environment.
package simpletexteditor; import java.io.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; class SimpleTextEditor { JLabel jlabMsg; JTextArea jta; JTextField jtfFName; JTextField jtfFind; JButton jbtnSave; JButton jbtnLoad; JButton jbtnFind; JButton jbtnFindNext; int findIdx; public SimpleTextEditor() { JFrame jfrm = new JFrame("A Simple Text Editor"); jfrm.getContentPane().setLayout(new FlowLayout()); jfrm.setSize(270, 420); jfrm.setDefaultCloseOperation(JFram e.EXIT_ON_CLOSE); jlabMsg = new JLabel(); jlabMsg.setPreferredSize(new Dimension(200, 30)); jlabMsg.setHorizontalAlignment(Swin gConstants.CENTER); JLabel jlabSeparator = new JLabel(); jlabSeparator.setPreferredSize(new Dimension(200, 30)); JLabel jlabFind = new JLabel("Search For:"); jlabFind.setPreferredSize(new Dimension(70, 20)); jlabFind.setHorizontalAlignment(Swi ngConstants.RIGHT); JLabel jlabFilename = new JLabel("Filename:"); jlabFilename.setPreferredSize(new Dimension(70, 20)); jlabFilename.setHorizontalAlignment (SwingConstants.RIGHT); jta = new JTextArea(); JScrollPane jscrlp = new JScrollPane(jta); jscrlp.setPreferredSize(new Dimension(250, 200)); jtfFName = new JTextField(15); jta.addCaretListener(new CaretListener() { public void caretUpdate(CaretEvent ce) { String str = jta.getText(); jlabMsg.setText("Current size: " + str.length()); findIdx = jta.getCaretPosition(); } }); jbtnSave = new JButton("Save File"); jbtnLoad = new JButton("Load File"); jbtnSave.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent le) { save(); } }); jbtnLoad.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent le) { load(); } }); jtfFind = new JTextField(15); jbtnFind = new JButton("Find From Top"); jbtnFindNext = new JButton("Find Next"); jbtnFind.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent le) { findIdx = 0; find(findIdx); } }); jbtnFindNext.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent le) { find(findIdx+1); } }); Container cp = jfrm.getContentPane(); cp.add(jscrlp); cp.add(jlabFind); cp.add(jtfFind); cp.add(jbtnFind); cp.add(jbtnFindNext); cp.add(jlabSeparator); cp.add(jlabFilename); cp.add(jtfFName); cp.add(jbtnSave); cp.add(jbtnLoad); cp.add(jlabMsg); jfrm.setVisible(true); } void save() { FileWriter fw; String fname = jtfFName.getText(); if(fname.length() == 0) { jlabMsg.setText("No filename present."); return; } try { fw = new FileWriter(fname); jta.write(fw); fw.close(); } catch(IOException exc) { jlabMsg.setText("Error opening or writing file."); return; } jlabMsg.setText("File written sucessfully."); } void load() { FileReader fw; String fname = jtfFName.getText(); if(fname.length() == 0) { jlabMsg.setText("No filename present."); return; } try { fw = new FileReader(fname); jta.read(fw, null); fw.close(); } catch(IOException exc) { jlabMsg.setText("Error opening or reading file."); return; } findIdx = 0; jlabMsg.setText("File loaded successfully."); } void find(int start) { String str = jta.getText(); String findStr = jtfFind.getText(); int idx = str.indexOf(findStr, start); if(idx > -1) { jta.setCaretPosition(idx); findIdx = idx; jlabMsg.setText("String found."); } else jlabMsg.setText("String not found."); jta.requestFocusInWindow(); } public static void main(String args[]) { SwingUtilities.invokeLater(new Runnable() { public void run() { new SimpleTextEditor(); } }); } } |