Olá galera.
Breve apresentação:
Sou novo no forum e estou buscando aprender linguagem Java para Desktop a principio.
Estou cursando ADS no 2º semestre, porem estou estudando por conta própria através de apostilas e video aulas.
Não quero me prender somente a Java, tenho planos futuramente estudar pelo menos 1 linguagem por ano e conforme eu for aprendendo
outras linguagem eu vou modelando meu trajeto.
Estou a principio evitando usar ferramentas que “facilitem” a parte de programar e estou fazendo todo código manualmente linha por linha,
pelo simples motivo de aprender como funciona.
Meu atual projeto é um programa bem simples de cadastro de cliente/fornecedor/produtos,
programa feito inteiro em JOptionPane com a combinação de um do-while + switchcase.
Até ai meu programa funciona como eu gostaria, ele cadastra, grava no arquivo txt, porem ao ler esse arquivo ele não aparece barra de rolagem.
Pelo o que eu pesquisei aqui no forum e no Google, JOptionPane não possui scrollbar, porem é possível adicionar um JTextArea com scroll dentro do JOptionPane.
Eu tentei fazer isso, porem não funcionou, o botão de rolagem fica apagado como se estivesse desativado.
Segue abaixo código. Pode conter vários erros, expressões desnecessárias ou confusas pois eu sou novo e algumas funções tirei de exemplos vistos na internet. A parte de OO ainda é complicada para mim, mas com a pratica eu aprendo.
Desde ja agradeço a atenção!
package br.com.lixos;
import javax.swing.*;
import java.awt.*;
import java.io.BufferedReader;
import java.io.FileReader;
public class BarraDeRolagem {
public BarraDeRolagem(){
JFrame frame = new JFrame();
frame.setTitle("Teste");
frame.setBounds(300, 0, 700, 800);
frame.setSize(700, 725);
JPanel panel = new JPanel();
frame.getContentPane().add(panel);
JTextArea jArea = new JTextArea();
jArea.setLineWrap(true);
jArea.setBounds(100,100,415, 700);
//jArea.setBounds(10,80,303, 70);
jArea.setMargin(new Insets(5,5,5,5));
jArea.setWrapStyleWord(true);
JScrollPane myjspane = new JScrollPane();
myjspane.setViewportView(jArea);
myjspane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
myjspane.setHorizontalScrollBarPolicy(myjspane.HORIZONTAL_SCROLLBAR_ALWAYS);
String arq = "FDANTAS_FORNECEDOR.txt";
try{
BufferedReader in = new BufferedReader(new FileReader(arq));
JOptionPane.showMessageDialog(null, "Arquivo Lido!!","FDANTAS REP LTDA", JOptionPane.INFORMATION_MESSAGE);
String str,txt = "";
while ((str = in.readLine()) != null){
txt += "\r\n" + str;
}
jArea.setText(txt);
}catch(Exception e){
Toolkit.getDefaultToolkit().beep();
}
panel.add(jArea);
panel.add(myjspane);
frame.setVisible(true);
}
}