質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

1回答

1098閲覧

テキストボックスの値を計算したい!

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2019/06/24 08:19

編集2019/06/24 08:31

`目的
テキストボックスの値を計算して表示する計算機みたいなのをつくりたい。
二つのテキストボックスの値を足したいんですが

java

1import javax.swing.JFrame; 2import javax.swing.JPanel; 3import javax.swing.JTextField; 4import javax.swing.JButton; 5import javax.swing.JLabel; 6import java.awt.Container; 7import java.awt.BorderLayout; 8import java.awt.event.ActionListener; 9import java.awt.event.ActionEvent; 10 11class test1 extends JFrame implements ActionListener{ 12 13 JTextField text1; 14 JTextField text2; 15 JLabel label; 16 JLabel label1; 17 JLabel label2; 18 JLabel label3; 19 20 public static void main(String args[]){ 21 test1 frame = new test1("計算機"); 22 frame.setVisible(true); 23 } 24 25 test1(String title){ 26 setTitle(title); 27 setBounds(100, 100, 300, 250); 28 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 29 30 JPanel p = new JPanel(); 31 32 33 34 text1 = new JTextField("", 25); 35 text2 = new JTextField("", 25); 36 JButton button1 = new JButton("足し算"); 37 button1.addActionListener(this); 38 39 JButton button2 = new JButton("掛け算"); 40 button2.addActionListener(this); 41 42 label = new JLabel(); 43 44 p.add(text1); 45 p.add(text2); 46 p.add(button1); 47 p.add(button2); 48 49 Container contentPane = getContentPane(); 50 contentPane.add(p, BorderLayout.CENTER); 51 contentPane.add(label, BorderLayout.SOUTH); 52 } 53 54 public static void main(string args[]){ 55 int goukei1; 56 int goukei2; 57 goukei1 = text1.gettext+text2.gettext; 58 goukei2 = text1.gettext*text2.gettext; 59} 60 public void actionPerformed(ActionEvent e){ 61 String cmp = e.getActionCommand(); 62 63 if (cmp.equals("boutton1")){ 64 label.setText(goukei1); 65 }else if (cmp.equals("boutton2")){ 66 label.setText(goukei2); 67} 68} 69} 70 71``` 72**エラー表示** 73test1.java:54: エラー: シンボルを見つけられません 74 public static void main(string args[]){ 75 ^ 76 シンボル: クラス string 77 場所: クラス test1 78test1.java:57: エラー: staticでない変数 text1をstaticコンテキストから参照することはできません 79 goukei1 = text1.gettext+text2.gettext; 80 ^ 81test1.java:57: エラー: シンボルを見つけられません 82 goukei1 = text1.gettext+text2.gettext; 83 ^ 84 シンボル: 変数 gettext 85 場所: タイプJTextFieldの変数 text1 86test1.java:57: エラー: staticでない変数 text2をstaticコンテキストから参照することはできません 87 goukei1 = text1.gettext+text2.gettext; 88 ^ 89test1.java:57: エラー: シンボルを見つけられません 90 goukei1 = text1.gettext+text2.gettext; 91 ^ 92 シンボル: 変数 gettext 93 場所: タイプJTextFieldの変数 text2 94test1.java:58: エラー: staticでない変数 text1をstaticコンテキストから参照することはできません 95 goukei2 = text1.gettext*text2.gettext; 96 ^ 97test1.java:58: エラー: シンボルを見つけられません 98 goukei2 = text1.gettext*text2.gettext; 99 ^ 100 シンボル: 変数 gettext 101 場所: タイプJTextFieldの変数 text1 102test1.java:58: エラー: staticでない変数 text2をstaticコンテキストから参照することはできません 103 goukei2 = text1.gettext*text2.gettext; 104 ^ 105test1.java:58: エラー: シンボルを見つけられません 106 goukei2 = text1.gettext*text2.gettext; 107 ^ 108 シンボル: 変数 gettext 109 場所: タイプJTextFieldの変数 text2 110test1.java:64: エラー: シンボルを見つけられません 111 label.setText(goukei1); 112 ^ 113 シンボル: 変数 goukei1 114 場所: クラス test1 115test1.java:66: エラー: シンボルを見つけられません 116 label.setText(goukei2); 117 ^ 118 シンボル: 変数 goukei2 119 場所: クラス test1 120エラー11121**です** 122 123 124Java初めて一週間なので全然わかってませんが 125回答よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2019/06/24 08:23

このままではコードが見づらいので、質門を編集し、<code>ボタンで、出てくる’’’の枠の中にコードを貼り付けてください
LouiS0616

2019/06/24 08:26

もう少し詳しくエラーメッセージが出ている筈です。追記して下さい。
退会済みユーザー

退会済みユーザー

2019/06/24 08:33

修正しました。
m.ts10806

2019/06/24 08:37

コードフォーマット掛けられたほうが良いかと思います。 波カッコの閉じ部分が連続して同じ階層にあるってありえませんし。
azuapricot

2019/06/24 09:22

mainメソッドがふたつ.....
guest

回答1

0

まず、azuapricotさんが「修正依頼エリア」にて、

mainメソッドがふたつ.....

とおっしゃっています。確かに二つありますね。

一つでいいです。

また、メッセージ、読みましょう。日本語なのですから、まずは読みましょうよ...

test1.java:57: エラー: staticでない変数 text1をstaticコンテキストから参照することはできません

goukei1 = text1.gettext+text2.gettext;

これが出ている行(57行目)を見ると staticメソッドですよね。なのに、フィールドにアクセスしているのが原因。

自身のクラスでインスタンス化して、それを操作すればいい。

この二つを修正すれば、かなりエラーメッセージが減るはず。

投稿2019/06/25 05:00

BeatStar

総合スコア4958

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問