Hallo Leute habe mal eine Anwendung gebastelt war eigentlich eine Übungsaufgabe aber vllt.
sind ja einige von euch Studenten oder ähnliches und können damit was anfangen
Bin immer für Kritik und Verbesserungsvorschläge offen
MFG Sebastian
sind ja einige von euch Studenten oder ähnliches und können damit was anfangen
Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.text.NumberFormat;
import java.util.ArrayList;
import javax.swing.DefaultComboBoxModel;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.ListModel;
import javax.swing.WindowConstants;
import javax.swing.SwingUtilities;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
public class Messreihe extends javax.swing.JFrame {
private JButton jBLaden;
private JButton jBSpeichern;
private JButton jBExit;
private JButton jBUebernehmen;
private JTextField jTFMesswert;
private JList jLMesswerte;
private JScrollPane jScrollPane1;
private JLabel jLListe;
private JButton jBLeeren;
private JLabel jLAktuellerMesswert;
private int i=1;
public DefaultListModel jLMesswerteModel = null;
/**
* Auto-generated main method to display this JFrame
*/
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Messreihe inst = new Messreihe();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
inst.setResizable(false);
}
});
}
public Messreihe() {
super("Messwert Reihe");
initGUI();
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);
{
jLAktuellerMesswert = new JLabel();
getContentPane().add(jLAktuellerMesswert);
jLAktuellerMesswert.setText(i+".Messwert:");
jLAktuellerMesswert.setBounds(12, 12, 78, 16);
}
{
jTFMesswert = new JTextField();
getContentPane().add(jTFMesswert);
jTFMesswert.setBounds(12, 34, 134, 23);
jTFMesswert.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent evt) {
jTFMesswertKeyPressed(evt);
}
});
}
{
jBUebernehmen = new JButton();
getContentPane().add(jBUebernehmen);
jBUebernehmen.setText("Übernehmen");
jBUebernehmen.setBounds(12, 63, 107, 23);
jBUebernehmen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jBUebernehmenActionPerformed(evt);
}
});
}
{
jBExit = new JButton();
getContentPane().add(jBExit);
jBExit.setText("Ende");
jBExit.setBounds(12, 254, 107, 23);
jBExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jBExitActionPerformed(evt);
}
});
}
{
jBSpeichern = new JButton();
getContentPane().add(jBSpeichern);
jBSpeichern.setText("Speichern");
jBSpeichern.setBounds(179, 259, 94, 23);
jBSpeichern.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jBSpeichernActionPerformed(evt);
}
});
}
{
jBLaden = new JButton();
getContentPane().add(jBLaden);
jBLaden.setText("Laden");
jBLaden.setBounds(284, 259, 86, 23);
jBLaden.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jBLadenActionPerformed(evt);
}
});
}
{
jScrollPane1 = new JScrollPane();
getContentPane().add(jScrollPane1);
jScrollPane1.setBounds(179, 34, 191, 220);
{
jLMesswerteModel = new DefaultListModel();
jLMesswerte = new JList();
jScrollPane1.setViewportView(jLMesswerte);
jLMesswerte.setModel(jLMesswerteModel);
jLMesswerte.setBounds(180, 37, 183, 210);
}
}
{
jBLeeren = new JButton();
getContentPane().add(jBLeeren);
jBLeeren.setText("Leeren");
jBLeeren.setBounds(12, 220, 107, 23);
jBLeeren.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jBLeerenActionPerformed(evt);
}
});
}
{
jLListe = new JLabel();
getContentPane().add(jLListe);
jLListe.setText("Liste:");
jLListe.setBounds(179, 12, 50, 16);
}
pack();
this.setSize(397, 331);
} catch (Exception e) {
//add your error handling code here
e.printStackTrace();
}
}
public void wertEintragen(){
try{
jLMesswerteModel.addElement(""+Double.parseDouble(jTFMesswert.getText()));
i++;
jLAktuellerMesswert.setText(i+".Messwert:");
jTFMesswert.requestFocus();
jTFMesswert.selectAll();
}catch(NumberFormatException n){
JOptionPane.showMessageDialog(null, "Fehler bei der Eingabe!");
jTFMesswert.requestFocus();
jTFMesswert.selectAll();
}catch(Exception e){
JOptionPane.showMessageDialog(null, "Fehler! das sollte nicht Passieren!");
System.exit(0);
}
}
private void jTFMesswertKeyPressed(KeyEvent evt) {
if(evt.getKeyCode() == KeyEvent.VK_ENTER){
wertEintragen();
}
}
private void jBUebernehmenActionPerformed(ActionEvent evt) {
wertEintragen();
}
private void jBExitActionPerformed(ActionEvent evt) {
System.exit(0);
}
private void jBSpeichernActionPerformed(ActionEvent evt) {
JFileChooser fc = new JFileChooser();
File selFile = null;
BufferedWriter bw = null;
FileWriter fw = null;
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
fc.setFileFilter(new FileNameExtensionFilter("*.mw", "mw"));
int status = fc.showSaveDialog(null);
if(status == JFileChooser.APPROVE_OPTION){
try{
selFile = new File(fc.getSelectedFile().toString()+".mw");
fw = new FileWriter(selFile);
bw = new BufferedWriter(fw);
for(int i=0;i<jLMesswerteModel.getSize();i++){
bw.write(jLMesswerteModel.get(i).toString());
bw.newLine();
}
bw.close();
}catch(IOException e){
e.printStackTrace();
}
}else if(status == JFileChooser.CANCEL_OPTION){
JOptionPane.showMessageDialog(null, "Speichern abgebrochen!");
}
}
private void jBLadenActionPerformed(ActionEvent evt) {
FileReader fr = null;
BufferedReader br = null;
File openFile = null;
JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
fc.setFileFilter(new FileNameExtensionFilter("*.mw", "mw"));
int status = fc.showOpenDialog(null);
if(status == JFileChooser.APPROVE_OPTION){
String messwertZeile;
try{
fr = new FileReader(fc.getSelectedFile().getAbsolutePath());
br = new BufferedReader(fr);
while((messwertZeile = br.readLine()) != null){
jLMesswerteModel.addElement(messwertZeile);
}
i=jLMesswerteModel.getSize() +1;
jLAktuellerMesswert.setText(i+".Messwert:");
jTFMesswert.requestFocus();
}catch(Exception e){
e.printStackTrace();
}finally{
if(br != null){
try{
br.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
}
private void jBLeerenActionPerformed(ActionEvent evt) {
try{
jLMesswerteModel.clear();
i=1;
jLAktuellerMesswert.setText(i+".Messwert:");
jTFMesswert.setText("");
jTFMesswert.requestFocus();
jTFMesswert.selectAll();
}catch(Exception e){
e.printStackTrace();
}
}
}
Bin immer für Kritik und Verbesserungsvorschläge offen
MFG Sebastian