
Enviado em 29/12/2019 - 17:46h
A tela é o seguinte: eu tenho um campo de texto para pegar o nome das pessoas e um botão que salva esses nomes em um arquivo de texto. Eu tenho também um jCombobox que só mostra os dados que estão dentro do txt se eu clicar em Salvar. Eu queria que os dados aparecessem assim que eu abro a tela. Como recuperar esses dados do txt, logo que a tela é iniciada?package uploadexemplo;
import java.awt.event.*;
import java.io.*;
import java.util.ArrayList;
import javax.swing.*;
import javax.swing.GroupLayout.Alignment;
public class NewJFrame extends javax.swing.JFrame {
static java.io.File diretorio = new java.io.File("src/arquivo");
boolean statusDir = diretorio.mkdir();
public static String nomeDisciplina;
ArrayList<String> lista = new ArrayList();
public JButton btnSalvar;
static FileReader fr;
static String linha;
static BufferedReader br;
static File arquivo = new File(diretorio, "ArquivoDisciplinas.txt");
private static javax.swing.JComboBox jComboBox1;
private static JTextField textField;
public NewJFrame() {
try {
boolean statusArq = arquivo.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
initComponents();
btnSalvar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
salvar();
} catch (IOException e1) {
e1.printStackTrace();
}
}
});
}
public static boolean Write(String Texto) {
try {
if (!arquivoExiste()) {
arquivo.createNewFile();
}
FileWriter arq = new FileWriter(arquivo, true);
PrintWriter gravarArq = new PrintWriter(arq);
gravarArq.println(Texto);
gravarArq.close();
return true;
} catch (IOException e) {
System.out.println(e.getMessage());
return false;
}
}
public static void salvar() throws IOException {
fr = new FileReader(arquivo);
br = new BufferedReader(fr);
linha = br.readLine();
String print = textField.getText() + ";";
while(linha != null){
jComboBox1.addItem(linha);
linha = br.readLine();
}
if (NewJFrame.Write(print)) {
System.out.println("Arquivo salvo com sucesso!");
} else {
System.out.println("Erro ao salvar o arquivo!");
}
}
public static boolean arquivoExiste() {
return arquivo.exists();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
@SuppressWarnings("unchecked")
private void initComponents() {
jComboBox1 = new javax.swing.JComboBox();
textField = new JTextField();
textField.setColumns(10);
btnSalvar = new JButton("Salvar");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
layout.setHorizontalGroup(
layout.createParallelGroup(Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(19)
.addGroup(layout.createParallelGroup(Alignment.LEADING)
.addComponent(jComboBox1, GroupLayout.PREFERRED_SIZE, 149, GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addComponent(textField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(35)
.addComponent(btnSalvar)))
.addContainerGap(171, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(23)
.addGroup(layout.createParallelGroup(Alignment.BASELINE)
.addComponent(textField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addComponent(btnSalvar))
.addGap(76)
.addComponent(jComboBox1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addContainerGap(161, Short.MAX_VALUE))
);
getContentPane().setLayout(layout);
pack();
}// </editor-fold>
}
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Programa fora de escala na tela do pc (33)
Eu queria adicionar a incon do wifi e deixa transparente no fluxbox no... (0)









