Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Java
You last visited: Today at 02:11

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Problem mit weitergabe(actionlistener)

Discussion on Problem mit weitergabe(actionlistener) within the Java forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2013
Posts: 20
Received Thanks: 0
Question Problem mit weitergabe(actionlistener)

Guten abend zusammen,
ich komme einfach nicht auf die Lösung...

Durch "connect.setArtikelnummer(Fenster.string);" soll der wert an Artikelnummer weitergegeben werden.
Die Variable string wartet auf die Eingabe des Nutzers doch leider habe ich zwei Probleme:
1.Das programm läuft weiter und wartet nicht auf die eingabe des ActionListener um die Variable an "connect.setArtikelnummer(Fenster.string);" weiterzugeben (Ergebnis : NULL)
2.Ich schaffe es nicht das string in einen INT wert umgewandelt wird so das "connect.setArtikelnummer(Fenster.string);" damit arbeiten kann.

Ich danke für jede Hilfe ..
und ja ich bin neu .. vergibt mir meine Fehler
Code:
import java.sql.*;

public class DBConnect {
    private Connection con;
    private Statement st;
    private ResultSet rs;
    private int Artikelnummer;

    public void setArtikelnummer(int artnum) {
        this.Artikelnummer=artnum;
    }
    public int getArtikelnummer() {
        return Artikelnummer;
    }

    private String Artikel;
    private String Name;
    private String Preis;


    public DBConnect() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            con = DriverManager.getConnection("jdbc:mysql://localhost:3311/ic", "root", "root");
            st = con.createStatement();
        }
        catch (Exception ex) {
            System.out.println("Error: " + ex);
        }
    }
    public void getData() {
        try {
            String query = "select * from TEST WHERE Artikel = '"+Artikelnummer+"'";
            rs = st.executeQuery(query);
            System.out.println("Records from Database");
            while (rs.next()) {
                String art = rs.getString("Artikel");
                String nam = rs.getString("Name");
                String price = rs.getString("Preis");
                System.out.println("Artikel:   " + art + "   Name:   " + nam + "Preis:    "+ price);
                art=Artikel;
                nam=Name;
                price=Preis;
            }
        } catch(Exception ex) {
            System.out.println(ex);
        }
    }

}
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Frame extends JFrame {
    private JTextField Artikel;
    public String string ="";
    public Frame()
    {
        super("Fenster Titel");
        setLayout(new FlowLayout());

        Artikel = new JTextField(10);
        add(Artikel);

        DerHandler handler = new DerHandler();

        Artikel.addActionListener(handler);


    }


        public class DerHandler implements ActionListener
    {

        public void actionPerformed(ActionEvent event)
        {
            //String sstring ="";
            if(event.getSource()==Artikel)
                string=String.format("%s",event.getActionCommand());
            //JOptionPane.showMessageDialog(null,string);
            System.out.println("Ergebnis durch eingabe im JTextField: "+string);

        }

    }


}
Code:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.awt.event.*;

public class Rechner {




    public static void main(String[] args){
        DBConnect  connect = new DBConnect();
        connect.setArtikelnummer(179);
        connect.getData();

        // FRAME
        Frame Fenster = new Frame();
        Fenster.setVisible(true);
        Fenster.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        Fenster.setSize(400,200);

        //Command



        //DBWeitergabe
        System.out.println("Der Artikel hat in der DB Folgende Nummer: "+connect.getArtikelnummer());
        connect.setArtikelnummer(Fenster.string);


    }
}
DjBgNr.1 is offline  
Old 08/23/2016, 22:11   #2
 
.Scy's Avatar
 
elite*gold: 15
Join Date: Jul 2010
Posts: 3,926
Received Thanks: 1,158
Um einen String in ein int zu verwandeln solltest du nutzen.

Da du keinen ActionCommand setzt, gibt es auch keinen ActionCommand. Du solltest schon auf den Text im JTextField eingehen, in deinem listener.

Code:
public void actionPerformed(ActionEvent event)
        {
            //String sstring ="";
            if(event.getSource()==Artikel)
                string= artikel.getText();
            //JOptionPane.showMessageDialog(null,string);
            System.out.println("Ergebnis durch eingabe im JTextField: "+string);

        }
Außerdem ist es eine Java-Konvention variablen klein zu schreiben, sprich artikel und nicht Artikel, da klassen groß geschrieben werden. Desweiteren gibt es bereits eine klasse namens Frame, weswegen der name verwirrend ist für andere die deinen code lesen, ein name wie MyFrame o.ä. wäre passender.
.Scy is offline  
Old 08/23/2016, 22:16   #3
 
elite*gold: 0
Join Date: Apr 2013
Posts: 20
Received Thanks: 0
Okey , es geht darum das im JTextField die Eingabe an connect.setArtikelnummer(Fenster.string) weitergegeben soll.. Daraufhin soll dann der getData() mit der Artikelnummer in der DB den entsprechen Eintrag rausfiltern und per System.out.... mir ausgeben.
@ dennoch danke für die kurze und schnelle Hilfe
DjBgNr.1 is offline  
Old 08/23/2016, 22:18   #4
 
.Scy's Avatar
 
elite*gold: 15
Join Date: Jul 2010
Posts: 3,926
Received Thanks: 1,158
Habe meine antwort nochmal bearbeitet, weil mir der fehler aufgefallen ist, den du gemacht hast.
.Scy is offline  
Old 08/23/2016, 22:34   #5
 
elite*gold: 0
Join Date: Apr 2013
Posts: 20
Received Thanks: 0
Ist er nicht mit string=String.format("%s",event.getActionCommand() ); vorhanden?
Code:
        public void actionPerformed(ActionEvent event)
        {
            //String sstring ="";
            if(event.getSource()==Artikel)
                string=String.format("%s",event.getActionCommand());
            //JOptionPane.showMessageDialog(null,string);
            System.out.println("Ergebnis durch eingabe im JTextField: "+string);

        }
DjBgNr.1 is offline  
Old 08/23/2016, 22:42   #6
 
.Scy's Avatar
 
elite*gold: 15
Join Date: Jul 2010
Posts: 3,926
Received Thanks: 1,158
Quote:
Originally Posted by DjBgNr.1 View Post
Ist er nicht mit string=String.format("%s",event.getActionCommand() ); vorhanden?
Code:
        public void actionPerformed(ActionEvent event)
        {
            //String sstring ="";
            if(event.getSource()==Artikel)
                string=String.format("%s",event.getActionCommand());
            //JOptionPane.showMessageDialog(null,string);
            System.out.println("Ergebnis durch eingabe im JTextField: "+string);

        }
Du müsstest deinem JTextField ein ActionCommand geben. Sprich:
Code:
artikel.setActionCommand(artikel.getText()); //<-- würde aber nicht funktionieren, da nur der aller erste text gesetzt wird.
Du MUSST um den text zu übernehmen definitiv den text aus dem JTextField via getText() auslesen.
.Scy is offline  
Old 08/24/2016, 00:05   #7
 
elite*gold: 0
Join Date: Apr 2013
Posts: 20
Received Thanks: 0
Soweit so gut .

jetzt bleibt nurnoch das Problem mit der Übergabe an eine Variable übrig. Sprich ich möchte nun i an Artikelnummer weitergeben damit es die abfrage in MySQL starten kann.

Code:
        jt.addActionListener(new ActionListener() {
            [MENTION=295804]Override[/MENTION]
            public void actionPerformed(ActionEvent e)
            {
                String input = jt.getText();
                int i = Integer.parseInt(jt.getText());
                System.out.println(i);
            }
        });
DjBgNr.1 is offline  
Old 08/24/2016, 00:11   #8
 
.Scy's Avatar
 
elite*gold: 15
Join Date: Jul 2010
Posts: 3,926
Received Thanks: 1,158
Code:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.awt.event.*;

public class Rechner {




    public static void main(String[] args){
        DBConnect  connect = new DBConnect();
        connect.setArtikelnummer(179);
        connect.getData();

        // FRAME
        Frame fenster = new Frame();
        fenster.setVisible(true);
        fenster.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        fenster.setSize(400,200);

        //Command



        //DBWeitergabe
        System.out.println("Der Artikel hat in der DB Folgende Nummer: "+connect.getArtikelnummer());
        connect.setArtikelnummer(Integer.parseInt(fenster.string);
        connect.getData();

    }
}
.Scy is offline  
Reply


Similar Threads Similar Threads
Java problem mit dem ActionListener
05/06/2014 - Java - 3 Replies
Guten Tag ich bin es mal wieder, ich bin ja wie bekannt ein Neuling in Java und habe ein Problem mit dem Listener da ich egal wo ich ihn hinpacke Eclipse ein Error ausspuckt ^^ kann mir jmd von euch helfen? =) import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JTextField;
Problem bei Weitergabe von Method in form
04/22/2012 - Web Development - 4 Replies
Hey E*PVP Community :) ich weiß nicht so ganz wie ich das umstellen soll... damit er das richtig macht... <div id="content_top"> Kategorien </div> <div id="content_main"> <?PHP
[Frage]Acc weitergabe
01/19/2012 - WarRock - 11 Replies
Hallo Epvp, da ich mit meinem alten Account kein Warrock mehr spiele. Und mein Clankollege gebannt ist, möchte ich nun meinen alten Account an ihn weitergeben. Und mit meinem neuen Account weiter zocken. Meine Frage dazu nun: Kann man alter Account nun gebannt werden weil mein Kollege damit zockt (also andere IP)
How to Legale Acc weitergabe?
05/02/2009 - Metin2 - 4 Replies
Also ich möchste evtl meinen metin2 Acc per Ebay verkaufen ... bzw. ein Screenshot verkaufen un die Daten + Pw dazu herschenken :mofo: wäre nett wenn mir jmd erklären kann was genau zu beachten ist nicht das ich am Ende i-welche Probleme bekomme oder den acc verliere und kein Geld bekomme *help* :handsdown:



All times are GMT +1. The time now is 02:11.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.