O exemplo neste artigo descreve o código de implementação java simples do bloco de notas. Compartilhe com todos para sua referência. Os detalhes são os seguintes:
O código completo é o seguinte:
Copie o código da seguinte maneira: import java.awt.*;
importar java.io.*;
importar java.awt.datatransfer.*;
importar java.awt.event.*;
classe pública Main estende Frame implementa ActionListener {
privado estático final longo serialVersionUID = 1L;
TextArea textArea = new TextArea();
MenuBar menuBar = new MenuBar();
Menu arquivoMenu = new Menu("Arquivo");
MenuItem novoItem = new MenuItem("Novo");
MenuItem openItem = new MenuItem("Abrir");
MenuItem saveItem = new MenuItem("Salvar");
MenuItem saveAsItem = new MenuItem("Salvar como");
MenuItem exitItem = new MenuItem("Sair");
Menu editarMenu = new Menu("Editar");
MenuItem selectItem = new MenuItem("Selecionar Tudo");
MenuItem copyItem = new MenuItem("Copiar");
MenuItem cutItem = new MenuItem("Cortar");
MenuItem pasteItem = new MenuItem("Colar");
String nomeArquivo = null;
Kit de ferramentas toolKit=Toolkit.getDefaultToolkit();
Área de transferência clipBoard=toolKit.getSystemClipboard();
private FileDialog openFileDialog = new FileDialog(this,"Abrir arquivo",FileDialog.LOAD);
private FileDialog saveAsFileDialog = new FileDialog(this,"Salvar arquivo como",FileDialog.SAVE);
público Principal(){
setTitle("Programa Bloco de notas por Jackbase");
setFont(new Font("Times New Roman",Font.PLAIN,12));
setBackground(Color.branco);
setSize(400.300);
arquivoMenu.add(novoItem);
arquivoMenu.add(openItem);
arquivoMenu.addSeparator();
arquivoMenu.add(saveItem);
arquivoMenu.add(saveAsItem);
arquivoMenu.addSeparator();
arquivoMenu.add(exitItem);
editMenu.add(selectItem);
editMenu.addSeparator();
editMenu.add(copiarItem);
editMenu.add(cortarItem);
editMenu.add(pasteItem);
menuBar.add(arquivoMenu);
menuBar.add(editarMenu);
setMenuBar(menuBar);
add(áreatexto);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
Sistema.exit(0);
}
});
newItem.addActionListener(este);
openItem.addActionListener(este);
saveItem.addActionListener(this);
saveAsItem.addActionListener(this);
exitItem.addActionListener(this);
selectItem.addActionListener(this);
copyItem.addActionListener(this);
cutItem.addActionListener(this);
pasteItem.addActionListener (este);
}
public void actionPerformed(ActionEvent e) { //Ouvir eventos
Objeto eventSource = e.getSource();
if(eventSource == novoItem){
textArea.setText("");
}else if(eventSource == openItem){
openFileDialog.show();
nomeArquivo = openFileDialog.getDirectory()+openFileDialog.getFile();
if(nomedoarquivo!=nulo)
readArquivo(nomeArquivo);
}else if (eventSource == saveItem){
if(nomedoarquivo!=nulo)
writeArquivo(nomeArquivo);
}else if(eventSource == saveAsItem){
saveAsFileDialog.show();
nomeArquivo = saveAsFileDialog.getDirectory()+saveAsFileDialog.getFile();
if (nomedoarquivo! = nulo)
writeArquivo(nomeArquivo);
}else if(eventSource == selectItem){
textArea.selectAll();
}else if(eventSource == copyItem){
String text=textArea.getSelectedText();
Seleção StringSelection=new StringSelection(texto);
clipBoard.setContents(seleção,nulo);
}else if(eventSource == cutItem){
String text=textArea.getSelectedText();
Seleção StringSelection=new StringSelection(texto);
clipBoard.setContents(seleção,nulo);
textArea.replaceRange("",textArea.getSelectionStart(),textArea.getSelectionEnd());
}else if(eventSource == pasteItem){
Conteúdo transferível=clipBoard.getContents(this);
if(conteúdo==nulo) return;
Texto de sequência;
texto="";
tentar{
text=(String)contents.getTransferData(DataFlavor.stringFlavor);
}catch(Exceção exceção){
}
textArea.replaceRange(textArea.getSelectionStart(),textArea.getSelectionEnd());
}else if(eventSource == exitItem){
Sistema.exit(0);
}
}
public void readFile(String fileName){ //Processamento do arquivo de leitura
tentar{
Arquivo arquivo = novo arquivo(nomeArquivo);
FileReader readIn = new FileReader(arquivo);
tamanho interno = (int)arquivo.comprimento();
int charsLeitura = 0;
char[] conteúdo = novo char[tamanho];
enquanto(readIn.ready())
charsRead += readIn.read(conteúdo, charsRead, tamanho - charsRead);
readIn.close();
textArea.setText(new String(conteúdo, 0, charsRead));
}
catch(IOException e){
System.out.println("Erro ao abrir arquivo");
}
}
public void writeFile(String fileName){ //Grava o processamento do arquivo
tentar{
Arquivo arquivo = novo arquivo (nomeArquivo);
FileWriter writeOut = novo FileWriter(arquivo);
writeOut.write(textArea.getText());
writeOut.close();
}
catch(IOException e){
System.out.println("Erro ao gravar arquivo");
}
}
@SuppressWarnings("descontinuação")
public static void main(String[] args){
Quadro quadro = new Main(); //Criar objeto
frame.show(); //É a exibição do objeto
}
}
Os resultados da execução são mostrados na figura abaixo:
Espero que este artigo seja útil para a programação Java de todos.