0

ポップアップを終了した後、ボタンとラベルが有効にならない理由を理解するのに助けが必要です。画面を更新する必要があるようなものですか?前に、犬の名前を保持するラベルをコーディングして、ボタンが押された後に (ボタンを無効にする)、ラベルを label= "Dogname" または Null に変更し、押された後の犬の名前を変更しようとしました: label = 「バディ」

だから私はテキストフィールドのテキストで以下のコードを使ってこれを達成しましたが、ユーザーがそれを消去できないようにラベルが必要です。

ラベルでこれを行うことができないのはなぜですか? 可変スコープにとどまる最良の方法は何ですか? そして最終的な意味は何ですか?ボタンからアクション リスナーを削除しても、まだリッスンします。なぜですか? 初期化とインスタンスがよくわかりません。これに役立つ簡単な類推はありますか?

Java が初めてで、書籍、チュートリアル、およびガイドを読んでヘルプを参照してください。強力なプログラム用のネットワーク知識と Mysql の強みでプログラミングを開始するのが待ちきれません。事前に助けてくれてありがとう。

これは、ユーザーが設定したパラメーターに対して一意の犬の名前を生成する最初のプログラムです。シンプルで要点。

私はEclipseで最新のJavaを使用しています。ゼロからGUIをコーディングしました。メインクラスとクラスの実装方法を理解しています。Java の最も難しい部分は、新しい情報を更新する GUI であり、それは簡単な部分になると思いました。レイアウト、パネル、フレーム ボタンを追加して、コードの動作に合わせて更新するのは少し混乱しているようです。

長いコードと初心者向けの編成以外に、これを学ぶのに役立つヒントは何ですか? //自分の言葉で物事が何を意味するのかを説明しましたが、それは非常に役に立ちました。どんなアドバイスでも大歓迎です。

最後に注意すべきことは、プログラマーが他の初心者プログラマーに「理解させる」ことを好むことに気付いたことです。私の意見では、これは生の答えと助けを与えるほど建設的だとは思いません...私はこのプログラムを4つ以上の良いtutsからゼロから構築しましたが、今では自分でプログラミングして構文のヘルプにWebを使用できると感じています. 私は自分のプロジェクトをコード化する人を探しているわけではありません。この単純なアプリケーションの基本を理解するのに助けが必要であり、私のコードがどこでより良く、より小さく、より速くなるかを教えてくれるかもしれません.

***これはすべて 1 つのクラスにまとめられていることはわかっていますが、たとえば、プログラムの単純化されたバージョンの方がうまく機能します。

最後の質問: Java の理解を深めるために、非常にシンプルなゲームの作成を開始したいと考えています。テキストベースですが、命と銃、売買などがあります。複数のクラスによって更新される必要がある複数の変数を持ち、それらのクラスが変数が別のクラスから変更されたときに認識しなければならないプログラムをセットアップする最良の方法は何ですか? うまくいけば、これは理にかなっています。例 johm は 10,000 の現金を持っており、ボーラー クラブに所属していますが、彼の現金が 10,000 のマークを下回ると、彼はクラブから削除されます。私は噛むことができる以上に噛んでいますか?次に、mysql とオンライン DB をミックスに追加してから、グラフィック ボタンなどを追加します。

楽しいプログラミング~ジェームス

package petNameGennie;
import java.awt.BorderLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.Set;

import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class FirstGui extends JFrame {
TextField text = new TextField(20);


private static final long serialVersionUID = 1L;


public FirstGui(){
    super("Pet Genie");
    setSize(600,400);
    setDefaultCloseOperation(EXIT_ON_CLOSE);

    JPanel p = new JPanel();
    JPanel p2 = new JPanel();
    JPanel p3 = new JPanel(new GridBagLayout());

    JButton b = new JButton("YOLO");

    //adding ears to the button!
    p.add(b);

    add(p);
    add(text);

    JLabel label1 = new JLabel("wha");
    JTextField tf= new JTextField("tf     tgggggtg");


    JTextArea ta= new JTextArea("text area yooooo");

    GridBagConstraints gbc = new GridBagConstraints();
    gbc.insets = new Insets(30,30,30,30);

    //gbc.gridx = 12;
    //gbc.gridy = 12;
    //p3.add(label, gbc);
    //
    //gbc.gridx = 12;
    //gbc.gridy = 12;
    //p3.add(tf, gbc);

    p3.add(label1, gbc);
    p3.add(tf, gbc);
    p3.add(ta);

    add(p, BorderLayout.SOUTH);
    add(p3, BorderLayout.CENTER);
    add(p2, BorderLayout.NORTH);
    add(text, BorderLayout.BEFORE_FIRST_LINE);
    b.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {


            //newgen
            String[] peoples = {"MAX","BUDDY","JAKE","BAILEY");

            List<String> names = Arrays.asList(peoples);
            Collections.shuffle(names);
                {
            int index = new Random().nextInt(names.size());
            String anynames = names.get(index);
            System.out.println(anynames);




            //end gen
            //Auto-generated method stub

    JOptionPane.showMessageDialog(null, "Your Dogs name is " +    anynames);
            String aa = anynames;
            anynames = aa;

            text.setText(aa);


            }
                }


    }
    );
    //if (b.) {                      //Not complete
        //b.setVisible(false);
    }



}
4

1 に答える 1