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