Mam problem, nie wiem dlaczego JCreator wywala mi 5 errorow poczas kompilacji, tekst jest spisany z ksiazki, a mimo to nie dziala.
import java.awt.;
import javax.swing.;
import java.awt.event.;
import java.util.;
import java.io.*;
public class Editor {
static public void main(String[] args) {
try {
UIManager.setLookAndFeel(
UIManager.getSystemLookAndFeelClassName()
);
}
catch (Exception e) {
}
new Editor();
}
//główne okno ramowe
private JFrame frame = new JFrame ("Editor");
//pole edycyjne
private JTextArea textArea = new JTextArea (10,20);
//dialog do wybierania plików
private JFileChooser fileChooser = new JFileChooser (".");
//pole tekstowe z nazwą edytowanie pliku
private JTextField txtFld = new JTextField (10);
//otwieranie pliku
private Action open=
new AbstractAction ("Otworz", new ImageIcon ("open.gif")){
public void actionPerformed(ActionEvent ae) {
if (fileChooser.showOpenDialog(frame) ==
JFileChooser.APPROVE_OPTION) {
readFile(fileChooser.getSelectedFile());
}
}
};
//zamykanie pliku
private Action close =
new AbstractAction ("Zamknij", new ImageIcon ("close.gif")){
public void actionPerformed(ActionEvent ae){
closeFile();
}
};
//zapis pliku
private Action save =
new AbstractAction ("Zapisz jako...", new ImageIcon("save.gif")){
public void actionPerformed(ActionEvent ae){
if (fileChooser.showSaveDialog(frame) ==
JFileChooser.getSelectedFile());
}
};
}
public Editor() {
Container content = frame.getContentPane();
//utworzeni menu
JMenuBar menuBar = makeMenu();
//utworzenie paska narzędziowego
JToolBar toolBar = makeToolBar();
//utworzenie menu kontekstowego
makePopup();
//panel przewijany zawierajacy pole edycyjne
JScrollPane scrollPane = new JScrollPane (textArea);
frame.setLocation (300, 300);
//obsługa zamknięcia okna
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//ustanowienie paska menu
frame.setJMenuBar(menuBar):
scrollPane.setPreferredSize(new Dimension (400, 300));
//ustalenie rozkładu i dodanie komponentów
content.setLayout(new BorderLayout ());
content.add(toolBar, BorderLayout.NORTH);
content.add(scrollPane, BorderLayout.CENTER);
//realizacja i uwidocznienie komponentu
frame.pack();
frame.setVisible(true);
}
private JToolBar makeToolBar() {
JToolBar tb = new JToolBar();
JLabel file = new JLabel("Nazwa pliku...");
txtFld.setMaximumSize(new Dimension(100,21));
//dodanie komponentów do paska narzędzi
tb.addSeparator();
tb.add(open);
tb.add(close);
tb.add(save);
tb.addSeparator();
tb.add(file);
tb.add(txtFld);
return tb;
}
private JMenuBar makeMenu() {
JMenuBar mb = new JMenuBar();
JMenu fileMen = new JMenu ("Plik");
JMenuItem exitMen = new JMenuItem ("Wyjscie");
//budowanie menu
fileMen.add(open);
fileMen.add(close);
fileMen.add(save);
fileMen.addSeparator();
fileMen.add(exitMen);
mb.add(fileMen);
//dodanie obslugi do menu exit
exitMen.addActionListener(
new ActionListener () {
public void actionPerformed(ActionEvent e) {
}
});
return mb;
}
private JPopupMenu make Popup() {
final JPopupMenu pop = new JPopupMenu ();
pop.add(open);
pop.add(close);
pop.add(save);
textArea.addMouseListener(new MouseAdapter(){
public void mouseReleased(MouseEvent e){
if (e.isPopupTrigger())
pop.show(textArea, e.getX(), e.getY());
}
});
return pop;
}
private void readFile(File file){
txtFld.setText(file.getName());
try{
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader (fr);
//wyczyszczenie panelu edycyjnego przed wczytnaniem nowego pliku
textArea.setText("");
String line;
while(line = br.readLine()) !=null) {
textArea.append(line +"\n");
}
br.close();
}
catch(Exception e) {
System.out.println(e.getMessage());
}
}
private void saveFile(File file) {
txtFld.setText(file.getName());
try{
FileWriter fw = new FileWriter(file);
String text = textArea.getText();
fw.write(text);
fw.close();
}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
private void closeFile () {
File file;
String fileName = txtFld.getText();
if (fileName.length()>0) {
file = new File(fileName);
}
else {
txtFld.setText("brak nazwy pliku");
return;
}
saveFile(file);
txtFld.setText("");
textArea.setText("");
}