Como parar a execução de uma leitura de arquivo.txt em Java

Amigos , boa tarde.

Tenho uma duvida e se alguém de vcs puder me ajudar, ficarei muito grato.

Bem, tenho duas telas (Forms), uma onde eu tenho uma tabela com nomes de musicas onde posso selecionar uma música (FrmVisMus) e outra onde mostra a musica selecionada na página anterior e mostra as notas em uma label ao lado (FrmMusicaPlay). Abaixo mostro uma parte do arquivo.txt (musica cifrada)

C Am7 Em7 Dm7/9
Introdução
C7+ Bm7 Am7
Mais um ano se passou
Em7 Dm7 F7+ G7(9)
E nem sequer ouvi falar seu nome, a lua e eu

A tela ou Form (FrmMusicaPlay), mostra a leitura das notas musicais e as mostram ao lado em uma label, de acordo com a sua seguência, bom, o programa esta funcionando muito bem, sem erros, mas caso eu clico no botão “sair”, hoje, estou colocando o seguinte comando

private void BtnsairActionPerformed(java.awt.event.ActionEvent evt) {                                        
       this.dispose();

}

Minha dúvida :

Com o código mostrado acima, eu saio da pagina que estou FrmMusicaPlay e volto para a página FrmVisMus, só que o programa continua rodando a leitura do arquivo.txt e da conflito caso eu escolha outra musica para assistir.

Resumindo, preciso ao clicar no botão sair, um comando para parar a execução da leitura do arquivo.txt. Procurei na internet alguns comando como por exemplo ; executor.shutdownNow();, stop, exit e outros mas não optive exito, alguém de vcs pode me ajudar ?

Mando abaixo o código onde leio o arquivo.tx.

private void btniniciarActionPerformed(java.awt.event.ActionEvent evt) {                                           
    System.out.println(totalLin);      
    if (isRunning) {
        executor.shutdown();
        isRunning = false;
    }
    executor = new ScheduledThreadPoolExecutor(1);
    isRunning = true;
    executor.scheduleAtFixedRate(() -> {
    c = cifras.get(current);
     try {
            txtareamus.getHighlighter().removeAllHighlights();
            txtareamus.getHighlighter().addHighlight(c.inicio, c.fim,
            new DefaultHighlighter.DefaultHighlightPainter(Color.cyan));
        } catch (BadLocationException ex) {
            Logger.getLogger(FrmMusicaPlay.class.getName()).log(Level.SEVERE, null, ex);
        }
        String nova = c.name.replace("/", "_");
        txtposicao.setText(nova);
        ImageIcon imageIcon = new ImageIcon(new ImageIcon(caminhoDasNotas + 
        txtposicao.getText() + ".jpg").getImage().getScaledInstance(599, 243, 
        Image.SCALE_DEFAULT));
        lblnota.setIcon(imageIcon);
         current++; 
         }, 0, Integer.parseInt(txttempo.getText()), TimeUnit.SECONDS);
       String selecionado = txtareamus.getSelectedText();  

}                                          

OBS : cliquei no botão Texto pré-formatado , mas não sei se foi formatado.

Obrigado

Onde está o código que faz a leitura do arquivo?

Grande amigo Ricardo, obrigado pelo pronto atendimento.

Segue o código completo conforme vc pediu e no final, um click no botão Texto pré-formatado

package Formularios;

import Classes.Sonumeros;
import static Formularios.FrmVisMusicas.txtpmusica;
import java.awt.Color;
import java.awt.Image;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.swing.ImageIcon;
import javax.swing.JTextField;
import javax.swing.text.BadLocationException;
import javax.swing.text.DefaultHighlighter;

class Cifra {

final int numeroDaLinha;
final String name;
final int inicio;
final int fim;

Cifra(String name, int inicio, int fim, int numeroDaLinha) {
    this.name = name;
    this.inicio = inicio;
    this.fim = fim;
    this.numeroDaLinha = numeroDaLinha;
}

}

public class FrmMusicaPlay extends javax.swing.JInternalFrame {

String caminhoDasMusicas = "C:\\MUSIC PLAY\\MusicasTeclado\\"; 
String caminhoDasNotas = "C://MUSIC PLAY//NotasTeclado//"; 
String flag;
int cont =800;
int totalLin=0;
boolean clicado;
Pattern p = Pattern.compile("[ABCDEFGabcdefgMm()0123456789/_dim#b°º+]+");
List<Cifra> cifras = new ArrayList<>();
static int current = 0;
Cifra c;
private Object e;

public FrmMusicaPlay() {
    initComponents();
    
     final JTextField ftf = txttempo;     // coloca um setfocus no JTextField (txttempo)
     javax.swing.SwingUtilities.invokeLater(ftf::requestFocusInWindow);
     
     txttempo.setDocument(new Sonumeros());
   
    try {
       List<String> lines = new ArrayList<>();
       BufferedReader ler = new BufferedReader(new InputStreamReader(
       new FileInputStream(caminhoDasMusicas + txtpmusica.getText() + ".txt"), "UTF-8"));
       String lin = ler.readLine();
       int offset = 0;
        int line = 0;
        int i = 0;
        while (lin != null) {
            lines.add(lin);
            if (line % 2 == 0) {
                Matcher m = p.matcher(lin);
                while (m.find()) {
                    cifras.add(new Cifra(m.group(), m.start() + offset, m.end() + offset , line));
                }
            }

            offset += lin.length() + 1;
            i++;
            line++;
            lin = ler.readLine();
            totalLin ++;
           }
        txtareamus.setText(String.join("\n", lines));
     
     } catch (Exception e) {
        System.out.println("erroo na leitura: " + e.getMessage());
    }
    
     txtareamus.setCaretPosition(0);

}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    Btnsair = new javax.swing.JButton();
    btniniciar = new javax.swing.JButton();
    lblnota = new javax.swing.JLabel();
    jLabel1 = new javax.swing.JLabel();
    jLabel10 = new javax.swing.JLabel();
    jLabel2 = new javax.swing.JLabel();
    txtposicao = new javax.swing.JTextField();
    txttempo = new javax.swing.JTextField();
    jLabel3 = new javax.swing.JLabel();
    jScrollPane1 = new javax.swing.JScrollPane();
    txtareamus = new javax.swing.JTextPane();

    Btnsair.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
    Btnsair.setForeground(java.awt.Color.red);
    Btnsair.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Sai_Peq.png"))); // NOI18N
    Btnsair.setText("Sair");
    Btnsair.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            BtnsairActionPerformed(evt);
        }
    });

    btniniciar.setFont(new java.awt.Font("Arial", 1, 22)); // NOI18N
    btniniciar.setForeground(java.awt.Color.blue);
    btniniciar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/musica.png"))); // NOI18N
    btniniciar.setText("Iniciar");
    btniniciar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btniniciarActionPerformed(evt);
        }
    });

    lblnota.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.red, 2));

    jLabel1.setFont(new java.awt.Font("Arial", 1, 22)); // NOI18N
    jLabel1.setForeground(java.awt.Color.blue);
    jLabel1.setText("Nota :");
    jLabel1.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            jLabel1MouseClicked(evt);
        }
    });

    jLabel10.setFont(new java.awt.Font("Arial", 1, 24)); // NOI18N
    jLabel10.setForeground(java.awt.Color.red);
    jLabel10.setText("TOCAR  MÚSICAS");

    jLabel2.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
    jLabel2.setForeground(java.awt.Color.blue);
    jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
    jLabel2.setText("Música :");

    txtposicao.setFont(new java.awt.Font("Arial", 1, 36)); // NOI18N
    txtposicao.setForeground(java.awt.Color.red);

    txttempo.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N

    jLabel3.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
    jLabel3.setForeground(java.awt.Color.red);
    jLabel3.setText("Tempo da Música (Seg)");

    txtareamus.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.red, 2));
    txtareamus.setFont(new java.awt.Font("Arial", 1, 20)); // NOI18N
    txtareamus.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseEntered(java.awt.event.MouseEvent evt) {
            txtareamusMouseEntered(evt);
        }
        public void mousePressed(java.awt.event.MouseEvent evt) {
            txtareamusMousePressed(evt);
        }
    });
    jScrollPane1.setViewportView(txtareamus);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addContainerGap()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addComponent(jLabel2)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 825, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jLabel10)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel1)
                            .addGap(18, 18, 18)
                            .addComponent(txtposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 204, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addContainerGap(132, Short.MAX_VALUE))
                        .addGroup(layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addGap(515, 515, 515)
                                    .addComponent(Btnsair))
                                .addComponent(lblnota, javax.swing.GroupLayout.PREFERRED_SIZE, 602, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addContainerGap(20, Short.MAX_VALUE))))
                .addGroup(layout.createSequentialGroup()
                    .addGap(238, 238, 238)
                    .addComponent(btniniciar, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(28, 248, Short.MAX_VALUE))
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addGap(78, 78, 78)
                            .addComponent(txttempo, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addComponent(jLabel3))
                    .addGap(217, 217, 217))))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                .addGroup(layout.createSequentialGroup()
                    .addGap(29, 29, 29)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabel1)
                        .addComponent(txtposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(35, 35, 35)
                    .addComponent(lblnota, javax.swing.GroupLayout.PREFERRED_SIZE, 250, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(47, 47, 47)
                    .addComponent(jLabel3)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(txttempo, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 48, Short.MAX_VALUE)
                    .addComponent(btniniciar, javax.swing.GroupLayout.PREFERRED_SIZE, 42, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(53, 53, 53)
                    .addComponent(Btnsair))
                .addGroup(layout.createSequentialGroup()
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addContainerGap()
                            .addComponent(jLabel2))
                        .addComponent(jLabel10))
                    .addGap(18, 18, 18)
                    .addComponent(jScrollPane1)))
            .addContainerGap())
    );
    setBounds(3, 0, 1499, 723);
}// </editor-fold>                        
 private void BtnsairActionPerformed(java.awt.event.ActionEvent evt) {                                        
     executor.shutdownNow();               //Tentei este comando mas não funcionou. 
     this.dispose();
}                                       
boolean isRunning = false;
ScheduledThreadPoolExecutor executor;

private void btniniciarActionPerformed(java.awt.event.ActionEvent evt) {                                           
    System.out.println(totalLin);      
    if (isRunning) {
        executor.shutdown();
        isRunning = false;
    }
    executor = new ScheduledThreadPoolExecutor(1);
    isRunning = true;
    executor.scheduleAtFixedRate(() -> {
    c = cifras.get(current);
     try {
            txtareamus.getHighlighter().removeAllHighlights();
            txtareamus.getHighlighter().addHighlight(c.inicio, c.fim,
            new DefaultHighlighter.DefaultHighlightPainter(Color.cyan));
        } catch (BadLocationException ex) {
            Logger.getLogger(FrmMusicaPlay.class.getName()).log(Level.SEVERE, null, ex);
        }
        String nova = c.name.replace("/", "_");
        txtposicao.setText(nova);
        ImageIcon imageIcon = new ImageIcon(new ImageIcon(caminhoDasNotas + 
        txtposicao.getText() + ".jpg").getImage().getScaledInstance(599, 243, 
         Image.SCALE_DEFAULT));
        lblnota.setIcon(imageIcon);
         current++; 
      }, 0, Integer.parseInt(txttempo.getText()), TimeUnit.SECONDS);
       String selecionado = txtareamus.getSelectedText(); 
}                                          
private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {                                     
    //não usado
}                                    

private void txtareamusMousePressed(java.awt.event.MouseEvent evt) {                                        
    String selecionado = txtareamus.getSelectedText();
    txtposicao.setText(selecionado);
    ImageIcon imageIcon = new ImageIcon(new ImageIcon("C://MUSIC PLAY//NotasTeclado//"+ 
    txtposicao.getText()+ ".jpg").getImage().getScaledInstance(599,243,Image.SCALE_DEFAULT));
    lblnota.setIcon(imageIcon);
}                                       
private void txtareamusMouseEntered(java.awt.event.MouseEvent evt) {                                        
    //não usado
}                                       
          
// Variables declaration - do not modify                     
private javax.swing.JButton Btnsair;
private javax.swing.JButton btniniciar;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblnota;
private javax.swing.JTextPane txtareamus;
private javax.swing.JTextField txtposicao;
public javax.swing.JTextField txttempo;
// End of variables declaration                   

}
identar texto pré-formatado por 4 espaços

Obrigado.

Primeiro você precisa selecionar o código Java (pode usar o Mouse ou Shift+Setas do teclado, como preferir), só que tem que selecionar.

Depois de selecionado, você clica no botão </>.

Por favor, veja o exemplo abaixo
Não pode ser tão difícil de selecionar uma parte do texto e clicar em um botão:

Veja o resultado após clicar no botão:

Tente editar sua mensagem anterior. :wink:

Caro amigo Ricardo,

Selecionar todo o texto e clicar no botão, fácil de se fazer, só existia um problema, ninguém tinha me dito isso antes, mas agora tudo bem, varei isso. Sobre minha duvida ?

Mandei o código, conforme vc pediu, só gostaria de esclarecer que a parte de cima do código, coloca o texto (musica com as notas em cima), numa Jtextpane, a parte de baixo, lê somente as notas e as mostra em uma Label, neste momento, se eu clicar no botão Sair para selecionar outra musica, o programa não lê as notas da nova musica selecionada.

Penso eu que tenho que colocar no botão sair, um comando para parar a execução da leitura que esta sendo feita.

Obrigado.

Segue código formatado e obrigado.

package Formularios;

import Classes.Sonumeros;
import static Formularios.FrmVisMusicas.txtpmusica;
import java.awt.Color;
import java.awt.Image;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.swing.ImageIcon;
import javax.swing.JTextField;
import javax.swing.text.BadLocationException;
import javax.swing.text.DefaultHighlighter;

class Cifra {

    final int numeroDaLinha;
    final String name;
    final int inicio;
    final int fim;

    Cifra(String name, int inicio, int fim, int numeroDaLinha) {
        this.name = name;
        this.inicio = inicio;
        this.fim = fim;
        this.numeroDaLinha = numeroDaLinha;
    }
}

public class FrmMusicaPlay extends javax.swing.JInternalFrame {
    
    String caminhoDasMusicas = "C:\\MUSIC PLAY\\MusicasTeclado\\"; 
    String caminhoDasNotas = "C://MUSIC PLAY//NotasTeclado//"; 
    String flag;
    int cont =800;
    int totalLin=0;
    boolean clicado;
    Pattern p = Pattern.compile("[ABCDEFGabcdefgMm()0123456789/_dim#b°º+]+");
    List<Cifra> cifras = new ArrayList<>();
    static int current = 0;
    Cifra c;
    private Object e;
    
    public FrmMusicaPlay() {
        initComponents();
        
         final JTextField ftf = txttempo;     // coloca um setfocus no JTextField (txttempo)
         javax.swing.SwingUtilities.invokeLater(ftf::requestFocusInWindow);
         
         txttempo.setDocument(new Sonumeros());
       
        try {
           List<String> lines = new ArrayList<>();
           BufferedReader ler = new BufferedReader(new InputStreamReader(
           new FileInputStream(caminhoDasMusicas + txtpmusica.getText() + ".txt"), "UTF-8"));
           String lin = ler.readLine();
           int offset = 0;
            int line = 0;
            int i = 0;
            while (lin != null) {
                lines.add(lin);
                if (line % 2 == 0) {
                    Matcher m = p.matcher(lin);
                    while (m.find()) {
                        cifras.add(new Cifra(m.group(), m.start() + offset, m.end() + offset , line));
                    }
                }

                offset += lin.length() + 1;
                i++;
                line++;
                lin = ler.readLine();
                totalLin ++;
               }
            txtareamus.setText(String.join("\n", lines));
         
         } catch (Exception e) {
            System.out.println("erroo na leitura: " + e.getMessage());
        }
        
         txtareamus.setCaretPosition(0);
  }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        Btnsair = new javax.swing.JButton();
        btniniciar = new javax.swing.JButton();
        lblnota = new javax.swing.JLabel();
        jLabel1 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        txtposicao = new javax.swing.JTextField();
        txttempo = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        txtareamus = new javax.swing.JTextPane();

        Btnsair.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        Btnsair.setForeground(java.awt.Color.red);
        Btnsair.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Sai_Peq.png"))); // NOI18N
        Btnsair.setText("Sair");
        Btnsair.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BtnsairActionPerformed(evt);
            }
        });

        btniniciar.setFont(new java.awt.Font("Arial", 1, 22)); // NOI18N
        btniniciar.setForeground(java.awt.Color.blue);
        btniniciar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/musica.png"))); // NOI18N
        btniniciar.setText("Iniciar");
        btniniciar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btniniciarActionPerformed(evt);
            }
        });

        lblnota.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.red, 2));

        jLabel1.setFont(new java.awt.Font("Arial", 1, 22)); // NOI18N
        jLabel1.setForeground(java.awt.Color.blue);
        jLabel1.setText("Nota :");
        jLabel1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jLabel1MouseClicked(evt);
            }
        });

        jLabel10.setFont(new java.awt.Font("Arial", 1, 24)); // NOI18N
        jLabel10.setForeground(java.awt.Color.red);
        jLabel10.setText("TOCAR  MÚSICAS");

        jLabel2.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        jLabel2.setForeground(java.awt.Color.blue);
        jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
        jLabel2.setText("Música :");

        txtposicao.setFont(new java.awt.Font("Arial", 1, 36)); // NOI18N
        txtposicao.setForeground(java.awt.Color.red);

        txttempo.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N

        jLabel3.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        jLabel3.setForeground(java.awt.Color.red);
        jLabel3.setText("Tempo da Música (Seg)");

        txtareamus.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.red, 2));
        txtareamus.setFont(new java.awt.Font("Arial", 1, 20)); // NOI18N
        txtareamus.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseEntered(java.awt.event.MouseEvent evt) {
                txtareamusMouseEntered(evt);
            }
            public void mousePressed(java.awt.event.MouseEvent evt) {
                txtareamusMousePressed(evt);
            }
        });
        jScrollPane1.setViewportView(txtareamus);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel2)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 825, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel10)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(jLabel1)
                                .addGap(18, 18, 18)
                                .addComponent(txtposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 204, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addContainerGap(132, Short.MAX_VALUE))
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(layout.createSequentialGroup()
                                        .addGap(515, 515, 515)
                                        .addComponent(Btnsair))
                                    .addComponent(lblnota, javax.swing.GroupLayout.PREFERRED_SIZE, 602, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addContainerGap(20, Short.MAX_VALUE))))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(238, 238, 238)
                        .addComponent(btniniciar, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(28, 248, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(78, 78, 78)
                                .addComponent(txttempo, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(jLabel3))
                        .addGap(217, 217, 217))))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(29, 29, 29)
    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel1)
                            .addComponent(txtposicao, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(35, 35, 35)
                        .addComponent(lblnota, javax.swing.GroupLayout.PREFERRED_SIZE, 250, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(47, 47, 47)
                        .addComponent(jLabel3)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(txttempo, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 48, Short.MAX_VALUE)
                        .addComponent(btniniciar, javax.swing.GroupLayout.PREFERRED_SIZE, 42, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(53, 53, 53)
                        .addComponent(Btnsair))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addContainerGap()
                                .addComponent(jLabel2))
                            .addComponent(jLabel10))
                        .addGap(18, 18, 18)
                        .addComponent(jScrollPane1)))
                .addContainerGap())
        );

        setBounds(3, 0, 1499, 723);
    }// </editor-fold>                        
   
    private void BtnsairActionPerformed(java.awt.event.ActionEvent evt) {                                        
         executor.shutdownNow();
         this.dispose();
     
    }                                       

    boolean isRunning = false;
    ScheduledThreadPoolExecutor executor;
   
    private void btniniciarActionPerformed(java.awt.event.ActionEvent evt) {                                           
        System.out.println(totalLin);      
        if (isRunning) {
            executor.shutdown();
            isRunning = false;
        }
        executor = new ScheduledThreadPoolExecutor(1);
        isRunning = true;
        executor.scheduleAtFixedRate(() -> {
        c = cifras.get(current);
         try {
                txtareamus.getHighlighter().removeAllHighlights();
                txtareamus.getHighlighter().addHighlight(c.inicio, c.fim,
                new DefaultHighlighter.DefaultHighlightPainter(Color.cyan));
            } catch (BadLocationException ex) {
                Logger.getLogger(FrmMusicaPlay.class.getName()).log(Level.SEVERE, null, ex);
            }
            String nova = c.name.replace("/", "_");
            txtposicao.setText(nova);
            ImageIcon imageIcon = new ImageIcon(new ImageIcon(caminhoDasNotas + txtposicao.getText() + ".jpg").getImage().getScaledInstance(599, 243, Image.SCALE_DEFAULT));
            lblnota.setIcon(imageIcon);
             current++; 
            }, 0, Integer.parseInt(txttempo.getText()), TimeUnit.SECONDS);
           String selecionado = txtareamus.getSelectedText(); 

    }                                          

    private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {                                     
        //não usado
    }                                    

    private void txtareamusMousePressed(java.awt.event.MouseEvent evt) {                                        
        String selecionado = txtareamus.getSelectedText();
        txtposicao.setText(selecionado);
        ImageIcon imageIcon = new ImageIcon(new ImageIcon("C://MUSIC PLAY//NotasTeclado//"+ txtposicao.getText()+ ".jpg").getImage().getScaledInstance(599,243,Image.SCALE_DEFAULT));
        lblnota.setIcon(imageIcon);

    }                                       

    private void txtareamusMouseEntered(java.awt.event.MouseEvent evt) {                                        
        //não usado
    }                                       
              
    // Variables declaration - do not modify                     
    private javax.swing.JButton Btnsair;
    private javax.swing.JButton btniniciar;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JLabel lblnota;
    private javax.swing.JTextPane txtareamus;
    private javax.swing.JTextField txtposicao;
    public javax.swing.JTextField txttempo;
    // End of variables declaration                   
      
}

Ficou muuuuito melhor sua postagem.
Assim dá gosto de ler o código. :slight_smile:

Poderias postar também o seguinte?

  1. Código da classe Sonumeros;
  2. Código da classe FrmVisMusicas;
  3. Um arquivo de exemplo com cifras pra poder testar seu programa;

Se eu poderia postar os códigos ??? Mas é claro que posso, fico feliz só em seu interesse em me ajudar. ai vão os código e todos formatado.

classe Sonumeros ;

 package Classes;

import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;
public class Sonumeros extends PlainDocument {
        @Override
       public void insertString(int offs, String str, AttributeSet  a) throws BadLocationException {
       super.insertString(offs, str.replaceAll("[^0-9]",  ""),  a);
    }
}



Código da classe  `FrmVisMusicas` ;
============================

     package Formularios;

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.IOException;
    import java.nio.file.Files;
    import java.nio.file.Path;
    import java.nio.file.Paths;
    import java.util.List;
    import java.util.stream.Collectors;
    import java.util.stream.Stream;
    import javax.swing.JFileChooser;
    import javax.swing.JOptionPane;
    import javax.swing.table.DefaultTableModel;

    public class FrmVisMusicas extends javax.swing.JInternalFrame {
        final String caminho = "C://MUSIC PLAY//MusicasTeclado//";
        FileInputStream entrada;
        FileOutputStream saida;
        File arquivo;
        JFileChooser seleccionado = new JFileChooser();
        File arq;
        byte[] bytesImg;

        public FrmVisMusicas() {
            initComponents();
            btntocar.setVisible(false);

            try (Stream<Path> walk = Files.walk(Paths.get(caminho))) {
                List<String> result = walk.filter(Files::isRegularFile)
                        .map(x -> x.getFileName().toString()).collect(Collectors.toList());

                Object[][] dados = new Object[result.size()][1];

                for (int i = 0; i < result.size(); i++) {
                    dados[i] = new Object[]{result.get(i).split("\\.")[0]};
                }

                DefaultTableModel table = new DefaultTableModel(dados, new String[]{"Música"});
                tblmusicas.setModel(table);

            } catch (IOException e) {
                System.out.printf("Erro: %s", e.getMessage());
            }
        }

        @SuppressWarnings("unchecked")
        // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
        private void initComponents() {

            lblpesquisa = new javax.swing.JLabel();
            Btnsair = new javax.swing.JButton();
            lblmusicacadastrada = new javax.swing.JLabel();
            txtpmusica = new javax.swing.JTextField();
            btntocar = new javax.swing.JButton();
            jScrollPane1 = new javax.swing.JScrollPane();
            txtarea = new javax.swing.JTextArea();
            jLabel1 = new javax.swing.JLabel();
            jLabel10 = new javax.swing.JLabel();
            btngravar = new javax.swing.JButton();
            scrollPane2 = new java.awt.ScrollPane();
            tblmusicas = new javax.swing.JTable();

            lblpesquisa.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
            lblpesquisa.setForeground(java.awt.Color.blue);
            lblpesquisa.setIcon(new 
           javax.swing.ImageIcon(getClass().getResource("/Imagem/abrir_peq.png"))); // NOI18N
            lblpesquisa.setText(" Música :");

            Btnsair.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
            Btnsair.setForeground(java.awt.Color.red);
            Btnsair.setIcon(new 
            javax.swing.ImageIcon(getClass().getResource("/Imagem/Sai_Peq.png"))); // NOI18N
            Btnsair.setText("Sair");
            Btnsair.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    BtnsairActionPerformed(evt);
                }
            });

            lblmusicacadastrada.setFont(new java.awt.Font("Arial", 1, 20)); // NOI18N
            lblmusicacadastrada.setForeground(java.awt.Color.blue);
            lblmusicacadastrada.setIcon(new 
            javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
            lblmusicacadastrada.setText("Músicas Cadastradas :");

            txtpmusica.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
            txtpmusica.setForeground(java.awt.Color.blue);
            txtpmusica.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    txtpmusicaActionPerformed(evt);
                }
            });
            txtpmusica.addKeyListener(new java.awt.event.KeyAdapter() {
                public void keyReleased(java.awt.event.KeyEvent evt) {
                    txtpmusicaKeyReleased(evt);
                }
            });

            btntocar.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
            btntocar.setForeground(java.awt.Color.blue);
            btntocar.setIcon(new 
            javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
            btntocar.setText("Rodar Musica");
            btntocar.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    btntocarActionPerformed(evt);
                }
            });

            txtarea.setColumns(20);
            txtarea.setFont(new java.awt.Font("Arial", 1, 20)); // NOI18N
            txtarea.setRows(5);
            txtarea.setAutoscrolls(false);
            txtarea.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.red, 2));
            jScrollPane1.setViewportView(txtarea);

            jLabel1.setFont(new java.awt.Font("Arial", 1, 20)); // NOI18N
            jLabel1.setForeground(java.awt.Color.blue);
            jLabel1.setIcon(new 
            javax.swing.ImageIcon(getClass().getResource("/Imagem/Vis_Musica.png"))); // NOI18N
            jLabel1.setText("Musica :");

            jLabel10.setFont(new java.awt.Font("Arial", 1, 24)); // NOI18N
            jLabel10.setForeground(java.awt.Color.red);
            jLabel10.setText("VISUALIZAR MÚSICAS");

            btngravar.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
            btngravar.setForeground(java.awt.Color.red);
            btngravar.setIcon(new 
            javax.swing.ImageIcon(getClass().getResource("/Imagem/cadastro.png"))); // NOI18N
            btngravar.setText("Gravar");
            btngravar.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    btngravarActionPerformed(evt);
                }
            });

            tblmusicas.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.red, 2));
            tblmusicas.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
            tblmusicas.setModel(new javax.swing.table.DefaultTableModel(
                new Object [][] {

                },
                new String [] {

                }
            ));
            tblmusicas.setAutoscrolls(false);
            tblmusicas.setRowHeight(26);
            tblmusicas.setShowVerticalLines(false);
            tblmusicas.addMouseListener(new java.awt.event.MouseAdapter() {
                public void mouseClicked(java.awt.event.MouseEvent evt) {
                    tblmusicasMouseClicked(evt);
                }
            });
            scrollPane2.add(tblmusicas);

            javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
            getContentPane().setLayout(layout);
            layout.setHorizontalGroup(
                layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
                         false)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(lblmusicacadastrada, 
                       javax.swing.GroupLayout.PREFERRED_SIZE, 247, 
                         javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(337, 337, 337))
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(scrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 
                      javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGap(26, 26, 26)))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addGap(84, 84, 84)
                            .addComponent(jLabel1))
                        .addGroup(layout.createSequentialGroup()
                            .addGap(3, 3, 3)
                            
                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jLabel10)
                                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 
                  868, javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addGap(60, 60, 60))
                .addGroup(layout.createSequentialGroup()
                    .addGap(39, 39, 39)
                    .addComponent(lblpesquisa)
                    .addGap(18, 18, 18)
                    .addComponent(txtpmusica, javax.swing.GroupLayout.PREFERRED_SIZE, 403, 
                     javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(91, 91, 91)
                    .addComponent(btngravar, javax.swing.GroupLayout.PREFERRED_SIZE, 161, 
                      javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(197, 197, 197)
                    .addComponent(btntocar)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 
                     javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(Btnsair)
                    .addGap(85, 85, 85))
                 );
                  layout.setVerticalGroup(
                  layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                    .addComponent(jLabel10)
                    .addGap(10, 10, 10)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(lblmusicacadastrada)
                        .addComponent(jLabel1))
                    .addGap(18, 18, 18)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 551, 
                      javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(scrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 
                     javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(lblpesquisa)
                        .addComponent(txtpmusica, javax.swing.GroupLayout.PREFERRED_SIZE, 
                       javax.swing.GroupLayout.DEFAULT_SIZE, 
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(btngravar, javax.swing.GroupLayout.DEFAULT_SIZE, 
                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(btntocar, javax.swing.GroupLayout.PREFERRED_SIZE, 44, 
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(Btnsair))
                    .addGap(175, 175, 175))
            );

            setBounds(0, 0, 1504, 724);
        }// </editor-fold>                        

        public String GuardarATexto(File arquivo, String contenido) {
            String resposta = null;
            try {
                saida = new FileOutputStream(arquivo);
                byte[] bytesTxt = contenido.getBytes();
                saida.write(bytesTxt);
                resposta = "Arquivo gravado !";
            } catch (Exception e) {

            }

            return resposta;
        }

        private void BtnsairActionPerformed(java.awt.event.ActionEvent evt) {                                        
            this.dispose();
        }                                       

        private void btntocarActionPerformed(java.awt.event.ActionEvent evt) {                                         
            FrmMusicaPlay musicaplay = new FrmMusicaPlay();
            FrmMenu.jDesktopPane1.add(musicaplay);
            musicaplay.setVisible(true);
        }                                        

        private void BtnpesquisarActionPerformed(java.awt.event.ActionEvent evt) {                                             
        }                                            

        private void tblmusicasMouseClicked(java.awt.event.MouseEvent evt) {                                        
            txtarea.setText("");
            btntocar.setVisible(true);
            int linha = tblmusicas.getSelectedRow();
            txtpmusica.setText(tblmusicas.getValueAt(linha, 0).toString());
            File arquivo = new File(caminho + txtpmusica.getText() + ".txt");
            try {
                BufferedReader ler = new BufferedReader(new FileReader(arquivo));
                String lin = ler.readLine();
                while (lin != null) {
                    txtarea.append(lin + "\n");
                    lin = ler.readLine();
                }
            } catch (Exception e) {
                System.out.println("erroo na leitura " + e.getMessage());
            }
             txtarea.setCaretPosition(0);
        }                                       
        private void txtpmusicaKeyReleased(java.awt.event.KeyEvent evt) {                                       
        }                                      

        private void txtpmusicaActionPerformed(java.awt.event.ActionEvent evt) {                                           
        }                                          

        private void btngravarActionPerformed(java.awt.event.ActionEvent evt) {                                          
            //Botão gravar
            if (seleccionado.showDialog(null, "Guardar texto") == JFileChooser.APPROVE_OPTION) {
                arq = seleccionado.getSelectedFile();
                if (arq.getName().endsWith("txt")) {
                    String contenido = txtarea.getText();
                    String resposta = GuardarATexto(arq, contenido);
                    if (resposta != null) {
                        JOptionPane.showMessageDialog(null, resposta);
                    } else {
                        JOptionPane.showMessageDialog(null, "Erro ao gravar texto !");
                    }
                } else {
                    JOptionPane.showMessageDialog(null, "O texto deve ser gravado em formato textot");
                }
            }

        }                                         

        // Variables declaration - do not modify                     
        private javax.swing.JButton Btnsair;
        private javax.swing.JButton btngravar;
        private javax.swing.JButton btntocar;
        private javax.swing.JLabel jLabel1;
        private javax.swing.JLabel jLabel10;
        private javax.swing.JScrollPane jScrollPane1;
        private javax.swing.JLabel lblmusicacadastrada;
        private javax.swing.JLabel lblpesquisa;
        private java.awt.ScrollPane scrollPane2;
        private javax.swing.JTable tblmusicas;
        private javax.swing.JTextArea txtarea;
        public static javax.swing.JTextField txtpmusica;
        // End of variables declaration                   
    }

    Posso enviar os arquivo de cifra e de notas pelo email ???

Muito Obrigado,

Armando

Ricardo, tentei mandar alguns arquivos.txt (musicas) e alguns arquivos.jpg (notas musicais), mas não estou conseguindo pelo email, mensagem volta e não chega ao destinatário, vc teria algum email que eu pudesse mandar ? Obrigado.

Posta só o conteúdo de um arquivo .txt, pra saber como é o formato.

Todavia, dá pra enviar anexos no fórum, veja:

ajuda-3

Qual é a classe que possui o método main? Ela está faltando…

Também está faltando uma classe FrmMenu.

Ok Ricardo, vou enviar o FrmMenu e os arquivos anexados .txt e .jpg. Espero que de certo, qualquer problema , é só avisar.

FrmMenu ;
========A DESCONHECIDA - D.txt (2,1,KB) A LUA E EU - C.txt (872,Bytes) A NOITE DO MEU BEM - Am.txt (930,Bytes) A PAZ - F.txt (3,0,KB) A POBLEZA - Am.txt (794,Bytes) A ULTIMA CANÇÃO - Am.txt (1,4,KB) A A7 Am Am7(b5) Am7 Am7_G

package Formularios;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.Timer;

public class FrmMenu extends javax.swing.JFrame {

    public FrmMenu() {
        initComponents();
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jLabel5 = new javax.swing.JLabel();
        jDesktopPane1 = new javax.swing.JDesktopPane();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTextPane1 = new javax.swing.JTextPane();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        LblData = new javax.swing.JLabel();
        LblHora = new javax.swing.JLabel();
        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu4 = new javax.swing.JMenu();
        jMenu5 = new javax.swing.JMenu();
        jMenuItem1 = new javax.swing.JMenuItem();
        jMenuItem2 = new javax.swing.JMenuItem();
        jMenuItem3 = new javax.swing.JMenuItem();
        jMenu1 = new javax.swing.JMenu();
        jMenuItem8 = new javax.swing.JMenuItem();
        jMenuItem9 = new javax.swing.JMenuItem();
        jMenuItem10 = new javax.swing.JMenuItem();
        jMenu6 = new javax.swing.JMenu();
        jMenuItem11 = new javax.swing.JMenuItem();
        jMenuItem12 = new javax.swing.JMenuItem();
        jMenuItem13 = new javax.swing.JMenuItem();
        jMenu7 = new javax.swing.JMenu();
        jMenuItem14 = new javax.swing.JMenuItem();
        jMenuItem15 = new javax.swing.JMenuItem();
        jMenuItem16 = new javax.swing.JMenuItem();
        jMenu2 = new javax.swing.JMenu();
        jMenuItem4 = new javax.swing.JMenuItem();
        jMenuItem5 = new javax.swing.JMenuItem();
        jMenuItem7 = new javax.swing.JMenuItem();
        jMenuItem6 = new javax.swing.JMenuItem();
        jMenu3 = new javax.swing.JMenu();

        jLabel5.setText("jLabel5");

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setMinimumSize(new java.awt.Dimension(1500, 600));
        setResizable(false);
        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowOpened(java.awt.event.WindowEvent evt) {
                formWindowOpened(evt);
            }
        });

        jDesktopPane1.setBackground(new java.awt.Color(255, 255, 204));
        jDesktopPane1.setOpaque(false);

        javax.swing.GroupLayout jDesktopPane1Layout = new javax.swing.GroupLayout(jDesktopPane1);
        jDesktopPane1.setLayout(jDesktopPane1Layout);
        jDesktopPane1Layout.setHorizontalGroup(
            jDesktopPane1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 0, Short.MAX_VALUE)
        );
        jDesktopPane1Layout.setVerticalGroup(
            jDesktopPane1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 727, Short.MAX_VALUE)
        );

        jScrollPane1.setViewportView(jTextPane1);

        jLabel1.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        jLabel1.setForeground(new java.awt.Color(255, 0, 102));
        jLabel1.setText("By Armando Barbosa Júnior");

        jLabel2.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        jLabel2.setForeground(java.awt.Color.red);
        jLabel2.setText("Data :");

        jLabel3.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        jLabel3.setForeground(java.awt.Color.red);
        jLabel3.setText("Hora :");

        LblData.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        LblData.setForeground(new java.awt.Color(255, 0, 102));

        LblHora.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
        LblHora.setForeground(new java.awt.Color(255, 0, 102));

        jMenu4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Musicas.png"))); // NOI18N
        jMenu4.setText("INSTRUMENTO");

        jMenu5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Teclado.png"))); // NOI18N
        jMenu5.setText("Teclado");
        jMenu5.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                jMenu5FocusGained(evt);
            }
        });

        jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Nota.png"))); // NOI18N
        jMenuItem1.setText("Notas Musicais");
        jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem1ActionPerformed(evt);
            }
        });
        jMenu5.add(jMenuItem1);

        jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
        jMenuItem2.setText("Músicas em Txt");
        jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem2ActionPerformed(evt);
            }
        });
        jMenu5.add(jMenuItem2);

        jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_P, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Pdfpeq.png"))); // NOI18N
        jMenuItem3.setText("Músicas em  Pdf");
        jMenuItem3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem3ActionPerformed(evt);
            }
        });
        jMenu5.add(jMenuItem3);

        jMenu4.add(jMenu5);

        jMenu1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/violao.png"))); // NOI18N
        jMenu1.setText("Violão");

        jMenuItem8.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Nota.png"))); // NOI18N
        jMenuItem8.setText("Notas Musicais");
        jMenuItem8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem8ActionPerformed(evt);
            }
        });
        jMenu1.add(jMenuItem8);

        jMenuItem9.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
        jMenuItem9.setText("Musicas em Txt");
        jMenuItem9.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem9ActionPerformed(evt);
            }
        });
        jMenu1.add(jMenuItem9);

        jMenuItem10.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_P, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Pdfpeq.png"))); // NOI18N
        jMenuItem10.setText("Musicas em Pdf");
        jMenuItem10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem10ActionPerformed(evt);
            }
        });
        jMenu1.add(jMenuItem10);

        jMenu4.add(jMenu1);

        jMenu6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Baixo_4Cordas.png"))); // NOI18N
        jMenu6.setText("Baixo");

        jMenuItem11.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem11.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Nota.png"))); // NOI18N
        jMenuItem11.setText("Notas Musicais");
        jMenuItem11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem11ActionPerformed(evt);
            }
        });
        jMenu6.add(jMenuItem11);

        jMenuItem12.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem12.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
        jMenuItem12.setText("Musicas em Txt");
        jMenuItem12.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem12ActionPerformed(evt);
            }
        });
        jMenu6.add(jMenuItem12);

        jMenuItem13.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_P, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem13.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Pdfpeq.png"))); // NOI18N
        jMenuItem13.setText("Musicas em Pdf");
        jMenuItem13.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem13ActionPerformed(evt);
            }
        });
        jMenu6.add(jMenuItem13);

        jMenu4.add(jMenu6);

        jMenu7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Bateria.png"))); // NOI18N
        jMenu7.setText("Bateria");

        jMenuItem14.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_M, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem14.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Nota.png"))); // NOI18N
        jMenuItem14.setText("Notas Musicais");
        jMenu7.add(jMenuItem14);

        jMenuItem15.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem15.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/dj_peq.png"))); // NOI18N
        jMenuItem15.setText("Musicas em Txt");
        jMenu7.add(jMenuItem15);

        jMenuItem16.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_P, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem16.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Pdfpeq.png"))); // NOI18N
        jMenuItem16.setText("Musicas em Pdf");
        jMenu7.add(jMenuItem16);

        jMenu4.add(jMenu7);

        jMenuBar1.add(jMenu4);

        jMenu2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Teoria.png"))); // NOI18N
        jMenu2.setText("TEORIA MÚSICAL");

        jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Teclado.png"))); // NOI18N
        jMenuItem4.setText("Teclado");
        jMenuItem4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem4ActionPerformed(evt);
            }
        });
        jMenu2.add(jMenuItem4);

        jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_V, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/violao.png"))); // NOI18N
        jMenuItem5.setText("Violão");
        jMenuItem5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem5ActionPerformed(evt);
            }
        });
        jMenu2.add(jMenuItem5);

        jMenuItem7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Baixo_4Cordas.png"))); // NOI18N
        jMenuItem7.setText("Baixo");
        jMenu2.add(jMenuItem7);

        jMenuItem6.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_B, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Bateria.png"))); // NOI18N
        jMenuItem6.setText("Bateria");
        jMenuItem6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem6ActionPerformed(evt);
            }
        });
        jMenu2.add(jMenuItem6);

        jMenuBar1.add(jMenu2);

        jMenu3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagem/Sai_Peq.png"))); // NOI18N
        jMenu3.setText("SAIR");
        jMenu3.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jMenu3MouseClicked(evt);
            }
        });
        jMenuBar1.add(jMenu3);

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(26, 26, 26)
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 740, Short.MAX_VALUE)
                .addComponent(jLabel2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(LblData, javax.swing.GroupLayout.PREFERRED_SIZE, 142, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(63, 63, 63)
                .addComponent(jLabel3)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(LblHora, javax.swing.GroupLayout.PREFERRED_SIZE, 119, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(36, 36, 36))
            .addComponent(jDesktopPane1, javax.swing.GroupLayout.Alignment.TRAILING)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jDesktopPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabel1)
                        .addComponent(jLabel2))
                    .addComponent(LblData, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(LblHora, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel3))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        setBounds(7, 5, 1518, 830);
    }// </editor-fold>                        

    private void jMenu3MouseClicked(java.awt.event.MouseEvent evt) {                                    
        // Botão sair
        dispose();
    }                                   

    private void formWindowOpened(java.awt.event.WindowEvent evt) {                                  
        // Fui na tela Menu, botão direito em evento/windows/windows opened
        //Data :
          Date datasistema=new Date();
          SimpleDateFormat formato = new SimpleDateFormat ("dd/MM/yyyy");
          LblData.setText(formato.format(datasistema));
          
        //Hora
          Timer timer = new Timer(1000, new hora());
          timer.start();
     
    }                                 

    private void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // TODO add your handling code here:
    }                                          

    private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // TODO add your handling code here:
    }                                          

    private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // clicou em Teoria Teclado
        FrmTeoria teoriatec = new  FrmTeoria();
        teoriatec.setVisible(true);
        jDesktopPane1.add(teoriatec);

    }                                          

    private void jMenu5FocusGained(java.awt.event.FocusEvent evt) {                                   
        // TODO add your handling code here:
    }                                  

    private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // Abre form visPdf
        FrmVisPdf vispdf = new FrmVisPdf();
        vispdf.setVisible(true);
        jDesktopPane1.add(vispdf);
    }                                          

    private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {                                           

        FrmVisMusicas vismusicas = new FrmVisMusicas();
        vismusicas.setVisible(true);
        jDesktopPane1.add(vismusicas);
    }                                          

    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // Botão visualizar Teclado - notas
        FrmVisNotas Visnotas = new FrmVisNotas();
        Visnotas.setVisible(true);
        jDesktopPane1.add(Visnotas);
    }                                          

    private void jMenuItem11ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jMenuItem12ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jMenuItem13ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jMenuItem8ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // clic no violão - notas
         FrmVisNotaViolao visnotaviolao = new FrmVisNotaViolao();
        visnotaviolao.setVisible(true);
        jDesktopPane1.add(visnotaviolao);
    }                                          

    private void jMenuItem10ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // click no vispdf  violao
        FrmVisPdfViolao vispdfviolao = new FrmVisPdfViolao();
        vispdfviolao.setVisible(true);
        jDesktopPane1.add(vispdfviolao);
        
    }                                           

    private void jMenuItem9ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // Clic em VisMusViolao
        FrmVisMusicaViolao vismusviolao = new FrmVisMusicaViolao();
        vismusviolao.setVisible(true);
        jDesktopPane1.add(vismusviolao);
    
    }                                          

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(FrmMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(FrmMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(FrmMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(FrmMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(() -> {
            new FrmMenu().setVisible(true);
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JLabel LblData;
    private javax.swing.JLabel LblHora;
    public static javax.swing.JDesktopPane jDesktopPane1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenu jMenu2;
    private javax.swing.JMenu jMenu3;
    private javax.swing.JMenu jMenu4;
    private javax.swing.JMenu jMenu5;
    private javax.swing.JMenu jMenu6;
    private javax.swing.JMenu jMenu7;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JMenuItem jMenuItem1;
    private javax.swing.JMenuItem jMenuItem10;
    private javax.swing.JMenuItem jMenuItem11;
    private javax.swing.JMenuItem jMenuItem12;
    private javax.swing.JMenuItem jMenuItem13;
    private javax.swing.JMenuItem jMenuItem14;
    private javax.swing.JMenuItem jMenuItem15;
    private javax.swing.JMenuItem jMenuItem16;
    private javax.swing.JMenuItem jMenuItem2;
    public javax.swing.JMenuItem jMenuItem3;
    private javax.swing.JMenuItem jMenuItem4;
    private javax.swing.JMenuItem jMenuItem5;
    private javax.swing.JMenuItem jMenuItem6;
    private javax.swing.JMenuItem jMenuItem7;
    private javax.swing.JMenuItem jMenuItem8;
    private javax.swing.JMenuItem jMenuItem9;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextPane jTextPane1;
    // End of variables declaration                   
  
     class hora implements ActionListener {
      @Override
        public void actionPerformed (ActionEvent e) {
       Calendar now =Calendar.getInstance();
       LblHora.setText(String.format("%1$tH:%1$tM:%1$tS", now));
     }
}
} // Fim da classe principal.

Obrigado.

Ricardo, no meu projeto , não fiz a classe main, como sou iniciante no Java, ainda não conheço bem a estrutura desta linguagem, fiz uma tela FrmMenu e nela, chamo outras telas (Forms), muitos métodos, foram tirados da internet e feitos com a ajuda de vcs da Guj, terminado este meu projeto, quero estudar Java a fundo, desculpa minha ignorância, mas queria muito fazer este programa para ajudar a estudar teclado musical, com muito esforço e ajuda, consegui, nunca fui um programador , mas agora quero aprender para melhorar este e fazer outros. Obrigado.

Armando.

Não perguntei por classe main perguntei qual era a classe que continha o método main, no seu caso é a classe FrmMenu, simples assim.

Ricardo, boa tarde, estou achando vc meio nervoso comigo, é impressão ou vc realmente esta nervoso comigo ? Não tenho culpa por não saber, estou aprendendo, mas é melhor eu parar por aqui e parar de incomodar. Muito obrigado por tudo.

Armando.

Claro que não estou nervoso, segue uma dica de ouro:

  • Quando a gente acha, a gente erra.

Estou com pouco tempo para mexer no seu código, mas acho que você foi tentando programar na tentativa e erro.
Imagino que usou opções de “arrastar & soltar” de algum editor visual (NetBeans?)
Então seu código tem umas construções bastante confusas e incorretas quando se fala em programação orientada à objetos.
Tem atributos estáticos que não deveriam ser estáticos.
Tem códigos duplicados.
Código desnecessário.

Assim que possível, vou dar uma refatorada nele.
Não consigo ajudar sem antes desfazer um pouco a bagunça.
:wink:

Desculpa, achei e errei.

Obrigado.

Tentei fazer um programa pela forma mais difícil e errada, ir fazendo e aprendendo, quando deveria aprender e depois fazer. Este programa esta no fim, achei esse erro, já estou tentando aprender para depois fazer.

Obrigado e fique com Deus.

Armando.

public static void main(String[] args) { … } não é uma classe e sim um método público que deve aparecer em alguma classe em Java, por ser o entry point de um programa Java. Sem esse método, a jvm(máquina virtual Java) não saberá onde inicia o programa.

ok e obrigado.