Seite 6 von 10 ErsteErste ... 2345678910 LetzteLetzte
Ergebnis 76 bis 90 von 141

Thema: Garf will Java-Programmierer werden - und schafft es nicht. Hilfe!

  1. #76
    Macht Musik Avatar von Peregrin_Tooc
    Registriert seit
    21.05.05
    Ort
    St. Ingbert
    Beiträge
    11.144
    Im Übrigen empfinde ich es als guten Programmierstil, Attribut- und Methodenaufrufe immer mit this zu kennzeichnen, wenn man eine Objektmethode (=eine, die nicht static ist) schreibt, das erhöhnt mMn die Lesbarkeit enorm, weil man dann immer weiß, woher die Variable bzw. Methode kommt.
    Zitat Zitat von Leonard Bernstein
    This will be our reply to violence:
    to make music more intensely,
    more beautifully,
    more devotedly than ever before.
    Meine Stories:
    Civ VI aus der Sicht von Civ IV BTS, englischer Weltraumsieg auf König
    Der Erste Kaiser wieder aufgenommen

  2. #77
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Ich versuch's ja Aber es kriselt an allen Fronten - dennoch: Ich gelobe Besserung!

    Neue Frage. Bin jetzt bei Jigloo angelangt.

    PHP-Code:
    private void BtnUmrechnenActionPerformed(ActionEvent evt) {
            
    double tftc;
            
    tf Double.parseDouble(jTFFahrenheit.getText());
            
    tc = (tf-32) * 9;
            
    jTFCelsius.setText(String.valueOf(tc));
        } 
    Diese Methode gibt das richtige Ergebnis aus. Wenn ich die Zeile tc = (tf-32) * 5 / 9; aber so schreibe: tc = (tf-32) * (5 / 9); kommt für Celsius aber 0,0 raus statt 56,irgendwas. Wieso macht die Klammer da einen Unterschied? Müsste doch schnurz sein, oder?
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  3. #78
    Macht Musik Avatar von Peregrin_Tooc
    Registriert seit
    21.05.05
    Ort
    St. Ingbert
    Beiträge
    11.144
    im zweiten Fall werden 5 und 9 als Integer interpretiert, dann kommt 0 raus (und ein Rest von 5). Das ist ein klassischer Bug
    Du kannst (und solltest) das vermeiden, indem Du 5.0 und 9.0 schreibst.
    Zitat Zitat von Leonard Bernstein
    This will be our reply to violence:
    to make music more intensely,
    more beautifully,
    more devotedly than ever before.
    Meine Stories:
    Civ VI aus der Sicht von Civ IV BTS, englischer Weltraumsieg auf König
    Der Erste Kaiser wieder aufgenommen

  4. #79
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Peregrin, was würd ich nur ohne Dich machen? Danke!
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  5. #80
    Macht Musik Avatar von Peregrin_Tooc
    Registriert seit
    21.05.05
    Ort
    St. Ingbert
    Beiträge
    11.144
    Ohne mich würdest Du auf jemand anderen warten

    Aber dennoch gerne geschehen
    Zitat Zitat von Leonard Bernstein
    This will be our reply to violence:
    to make music more intensely,
    more beautifully,
    more devotedly than ever before.
    Meine Stories:
    Civ VI aus der Sicht von Civ IV BTS, englischer Weltraumsieg auf König
    Der Erste Kaiser wieder aufgenommen

  6. #81
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    *entstaub* So, dann wollen wir mal Peregrin und all die anderen hilfreichen Geister wieder entstauben Man nehme: Einen JFrame in Jigloo, der aus verschiedenen Komponenten besteht. Anbei der Frame, aber in Spoiler, da eigentlich irrelevant. Im Frame sind verschiedene Komponenten, die zu unterschiedlichen Zeiten angezeigt werden sollen. Die Frage lautet, man wird's erahnen, knapp und bescheiden: wie?
    Mein tolles Lehrbuch wartet mit folgenden weisen Worten auf:

    Sichtbarkeit: void setVisible( boolean b ) setVisible(true) zeigt das Fenster an. Liegt es im Hintergrund, wird es wieder in den Vordergrund geholt. Früher wurde die Methode show() verwendet.

    Ahja. Danke, jetztt ist mir alles klar. Ich will aber nicht das ganze Fenster visible oder nicht setzen, sondern einzelne Komponenten. Mit diesem Fall hat das Lehrbuch nicht gerechnet, ist ja auch sowas von abwegig Kurz und gut: Wenn ich gaaaaanz lieb gucke, helft ihr mir dann?

    Achtung Spoiler:
    PHP-Code:
    package gui;
    import javax.swing.JButton;
    import javax.swing.JLabel;
    import javax.swing.JTextField;

    import javax.swing.WindowConstants;
    import javax.swing.SwingUtilities;


    */
    public class 
    Unsichtbar extends javax.swing.JFrame {
        private 
    JLabel jLSchilling;
        private 
    JTextField jTFSchilling;
        private 
    JButton jBEuro;
        private 
    JButton jBDM;
        private 
    JTextField jTFErgebnis;
        private 
    JLabel jLErgebnis;
        private 
    JLabel jLWahlUmrechnung;

        
        public static 
    void main(String[] args) {
            
    SwingUtilities.invokeLater(new Runnable() {
                public 
    void run() {
                    
    Unsichtbar inst = new Unsichtbar();
                    
    inst.setLocationRelativeTo(null);
                    
    inst.setVisible(true);
                }
            });
        }
        
        public 
    Unsichtbar() {
            
    super();
            
    initGUI();
        }
        
        private 
    void initGUI() {
            try {
                
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
                
    getContentPane().setLayout(null);
                {
                    
    jLSchilling = new JLabel();
                    
    getContentPane().add(jLSchilling);
                    
    jLSchilling.setText("Schilling eingeben:");
                    
    jLSchilling.setBounds(243513738);
                }
                {
                    
    jTFSchilling = new JTextField();
                    
    getContentPane().add(jTFSchilling);
                    
    jTFSchilling.setBounds(179359131);
                }
                {
                    
    jLWahlUmrechnung = new JLabel();
                    
    getContentPane().add(jLWahlUmrechnung);
                    
                    
    jLWahlUmrechnung.setText("Umrechnen in:");
                    
    jLWahlUmrechnung.setBounds(1428511230);
                }
                {
                    
    jBEuro = new JButton();
                    
    getContentPane().add(jBEuro);
                    
    jBEuro.setText("Euro");
                    
    jBEuro.setBounds(951407747);
                }
                {
                    
    jBDM = new JButton();
                    
    getContentPane().add(jBDM);
                    
    jBDM.setText("D-Mark");
                    
    jBDM.setBounds(2161408047);
                }
                {
                    
    jLErgebnis = new JLabel();
                    
    getContentPane().add(jLErgebnis);
                    
    jLErgebnis.setText("Ergebnis:");
                    
    jLErgebnis.setBounds(481989432);
                }
                {
                    
    jTFErgebnis = new JTextField();
                    
    getContentPane().add(jTFErgebnis);
                    
    jTFErgebnis.setBounds(1342039327);
                    
    jTFErgebnis.setEditable(false);
                }
                
    pack();
                
    setSize(400300);
            } catch (
    Exception e) {
                
    //add your error handling code here
                
    e.printStackTrace();
            }
        }


    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  7. #82
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Edith: Was hier stand hat sich erledigt.
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  8. #83
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    Sichtbarkeit einen GUI-Komponente: Die Antwort ist verblüffend einfach: Auch deine Komponenten verfügen über die Methode setVisible

    Da bist du an der Stelle angelangt, an der es hilfreich ist, wenn man einen Bick auf die Dokumentation der Klassen werfen kann. Z.B.
    http://docs.oracle.com/javase/6/docs...TextField.html

    Wenn du Eclipse richtig eingerichtet hast, musst du aber nur den Variablennamen eingeben und "." eintippen. Dann sollten alle Methoden dieser Klasse aufgelistet werden. Das erspart den Blick in die Referenz.

  9. #84
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Hypothetisch angenommen, ich wüsste nicht, was Du meinst

    Aber noch genauer:

    PHP-Code:
    {
                    
    jBEuro = new JButton();
                    
    getContentPane().add(jBEuro);
                    
    jBEuro.setText("Euro");
                    
    jBEuro.setBounds(951407747);
                }
                {
                    
    jBDM = new JButton();
                    
    getContentPane().add(jBDM);
                    
    jBDM.setText("D-Mark");
                    
    jBDM.setBounds(2161408047);
                    
    jBDM.setVisible(false);
                } 
    Im unteren Button hab ich Visible auf false. In der Arbeitsoberfläche wird mir der Button nun auch nicht mehr angezeigt. Lasse ich das Programm laufen aber schon. Das verwirrt mich nicht nur, es ärgert mich auch. Wie schaffe ich es also, dass der Button jBDM nicht angezeigt wird?

    Und was hast Du eigentlich gemeint? Von welcher Variable sprichst Du? Soll ich eine boolean Variable setzen, die die Sichtbarkeit regelt? Und wenn ja - wo im Programm?
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  10. #85
    Registrierter Benutzer
    Registriert seit
    04.04.09
    Beiträge
    5.069
    Das tut doch exakt das, was man erwarten sollte, d.h. der DM-Button wird nicht mehr angezeigt?

    Also... du hast es schon neu kompiliert & gestartet?

  11. #86
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Sollte man meinen.

    Hier in der Eclipse-Programmieransicht:



    Kein DM-Button. Fein. Und wenn ich das Programm laufen lasse:



    Hinterhältig und gemein. Und mir unverständlich.
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  12. #87
    Registrierter Benutzer
    Registriert seit
    04.04.09
    Beiträge
    5.069
    Ich wette, dass es, warum auch immer, nicht neu kompiliert wurde. Und dementsprechend die Änderung in dem, was ausgeführt wird, noch nicht vorhanden ist.
    Versuch mal spaßeshalber den Text zu ändern - da sollte sich nämlich im ausgeführten auch Nichts ändern. (Oder der Button verschwindet auf einmal. )

  13. #88
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Der Mann ist gut! Jepp. Nix ändert sich. Ist ja fast philosophisch. Nur: Warum kompiliert Eclipse das Zeug nicht? Und wie bring ich Eclipse dazu, das doch zu tun? Ach manno, ich hätt mir ein Buch über Briefmarken sammeln kaufen sollen.
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  14. #89
    Seufz Avatar von GarfieldMcSnoopy
    Registriert seit
    24.08.06
    Beiträge
    6.904
    Mist, da hat sich glaub ich irgendwas verstellt. Ich könnt an die Decke gehen. Seufz. Muss ich mir mal in Ruhe ansehen. Danke jedenfalls für die Hilfe!
    Das ist alles, was wir tun können: immer wieder von neuem anfangen, immer und immer wieder. (Thornton Wilder)

  15. #90
    Registrierter Benutzer
    Registriert seit
    04.04.09
    Beiträge
    5.069
    Die einfache Lösung in dem Fall ist meistens, einfach die Klasse (bzw. notfalls das Projekt) neu zu erstellen. Da gibt sich das meistens. Ansonsten muss man da irgendwo am build path rumbasteln, was... nicht sonderlich viel Spaß macht.

Seite 6 von 10 ErsteErste ... 2345678910 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •