前提・実現したいこと
ラベルに張り付けるはずの変数"x"をmain文で使用できるようにしたくてその時にreturnを使って使用できるようにしたかったのですができませんでした。できるようにする方法を教えてください。また、それをラベルで表示されている数字の更新の仕方を教えてください。
発生している問題・エラーメッセージ
denpart0203.java:187: エラー: '.class'がありません return int x; ^
該当のソースコード
import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JTextField; import javax.swing.border.LineBorder; import javax.swing.*; import java.awt.Font; import java.awt.Color; import java.awt.image.BufferedImage; import java.awt.Container; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.Dimension; import java.awt.event.*; import java.awt.event.KeyEvent; import java.io.File; import javax.imageio.ImageIO; public class denpart0203 extends JFrame implements ActionListener{ static int x; JLabel label01 = new JLabel("" + x ); //ラベルを作成 public static void main(String[] args){ denpart0203 den = new denpart0203("Test"); den.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); den.setVisible(true); } denpart0203(String title){ setTitle("電卓"); setBounds(100, 100, 400, 600); getContentPane().setBackground( Color.WHITE ); JPanel panel01 = new JPanel(); LineBorder border01 = new LineBorder(Color.BLACK, 2, true); //ボーダーラインを作成 panel01.setBorder(border01); //ボーダーラインを表示 setLayout(new FlowLayout()); //レイアウトを選択 panel01.setPreferredSize(new Dimension(250, 350)); //パネルのサイズを指定 panel01.setBackground( new Color(200,255,255) ); //パネルの色を指定 JButton button01 = new JButton("1"); //ボタンを作成 JButton button02 = new JButton("2"); //ボタンを作成 JButton button03 = new JButton("3"); //ボタンを作成 JButton button0pu = new JButton("+"); //ボタンを作成 JButton button04 = new JButton("4"); //ボタンを作成 JButton button05 = new JButton("5"); //ボタンを作成 JButton button06 = new JButton("6"); //ボタンを作成 JButton button0ma = new JButton("ー"); //ボタンを作成 JButton button07 = new JButton("7"); //ボタンを作成 JButton button08 = new JButton("8"); //ボタンを作成 JButton button09 = new JButton("9"); //ボタンを作成 JButton button0ka = new JButton("X"); //ボタンを作成 JButton button0ze = new JButton("0"); //ボタンを作成 JButton button0zero = new JButton("00"); //ボタンを作成 JButton button0wa = new JButton("÷"); //ボタンを作成 JButton button0ce = new JButton("ce"); //ボタンを作成 JButton button0iko = new JButton("="); //ボタンを作成 JButton button0back = new JButton("bs"); //ボタンを作成 button01.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button02.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button03.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0pu.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button04.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button05.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button06.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ma.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button07.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button08.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button09.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ka.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ze.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0zero.setPreferredSize(new Dimension(105, 50)); //ボタンのサイズを指定 button0wa.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0ce.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 button0iko.setPreferredSize(new Dimension(105, 50)); //ボタンのサイズを指定 button0back.setPreferredSize(new Dimension(50, 50)); //ボタンのサイズを指定 getRootPane().setDefaultButton(button0iko); //Enterを押すと[button0iko]を起動 //0はゼロ JPanel panel201 = new JPanel(); panel201.setBorder(border01); //ボーダーラインを表示 panel201.setPreferredSize(new Dimension(215, 50)); //パネルのサイズを指定 panel201.setBackground( Color.WHITE ); //パネルの色を指定 button01.setMnemonic(KeyEvent.VK_1); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button02.setMnemonic(KeyEvent.VK_2); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button03.setMnemonic(KeyEvent.VK_3); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button04.setMnemonic(KeyEvent.VK_4); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button05.setMnemonic(KeyEvent.VK_5); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button06.setMnemonic(KeyEvent.VK_6); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button07.setMnemonic(KeyEvent.VK_7); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button08.setMnemonic(KeyEvent.VK_8); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button09.setMnemonic(KeyEvent.VK_9); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ze.setMnemonic(KeyEvent.VK_0); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0zero.setMnemonic(KeyEvent.VK_Z); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0pu.setMnemonic(KeyEvent.VK_Q); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ma.setMnemonic(KeyEvent.VK_W); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ka.setMnemonic(KeyEvent.VK_E); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0wa.setMnemonic(KeyEvent.VK_R); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0back.setMnemonic(KeyEvent.VK_A); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 button0ce.setMnemonic(KeyEvent.VK_S); //VKをALTキーとする そして_の後にあるキーを押されると[button]が起動 add(panel01); //パネルをフレームに表示 panel01.add(panel201); //パネルの中にパネルを表示 panel01.add(button01); //ボタンを表示 panel01.add(button02); //ボタンを表示 panel01.add(button03); //ボタンを表示 panel01.add(button0pu); //ボタンを表示 panel01.add(button04); //ボタンを表示 panel01.add(button05); //ボタンを表示 panel01.add(button06); //ボタンを表示 panel01.add(button0ma); //ボタンを表示 panel01.add(button07); //ボタンを表示 panel01.add(button08); //ボタンを表示 panel01.add(button09); //ボタンを表示 panel01.add(button0ka); //ボタンを表示 panel01.add(button0ze); //ボタンを表示 panel01.add(button0zero); //ボタンを表示 panel01.add(button0wa); //ボタンを表示 panel01.add(button0ce); //ボタンを表示 panel01.add(button0iko); //ボタンを表示 panel01.add(button0back); //ボタンを表示 panel201.add(label01); //パネルをフレームに表示 button01.addActionListener(this); button01.setActionCommand("btn01"); button02.addActionListener(this); button02.setActionCommand("btn02"); button03.addActionListener(this); button03.setActionCommand("btn03"); button04.addActionListener(this); button04.setActionCommand("btn04"); button05.addActionListener(this); button05.setActionCommand("btn05"); button06.addActionListener(this); button06.setActionCommand("btn06"); button07.addActionListener(this); button07.setActionCommand("btn07"); button08.addActionListener(this); button08.setActionCommand("btn08"); button09.addActionListener(this); button09.setActionCommand("btn09"); button0ze.addActionListener(this); button0ze.setActionCommand("btn0ze"); button0zero.addActionListener(this); button0zero.setActionCommand("btn0zero"); button0pu.addActionListener(this); button0pu.setActionCommand("btn0pu"); button0ma.addActionListener(this); button0ma.setActionCommand("btn0ma"); button0ka.addActionListener(this); button0ka.setActionCommand("btn0ka"); button0wa.addActionListener(this); button0wa.setActionCommand("btn0wa"); button0ce.addActionListener(this); button0ce.setActionCommand("btn0ce"); button0iko.addActionListener(this); button0iko.setActionCommand("btn0iko"); button0back.addActionListener(this); button0back.setActionCommand("btn0back"); } public void actionPerformed(ActionEvent e){ String cmd = e.getActionCommand(); if (cmd.equals("btn01")){ put("1"); x = 1; put( x + "カウント"); return x; }else if (cmd.equals("btn02")){ put("2"); }else if (cmd.equals("btn03")){ put("3"); }else if (cmd.equals("btn04")){ put("4"); }else if (cmd.equals("btn05")){ put("5"); }else if (cmd.equals("btn06")){ put("6"); }else if (cmd.equals("btn07")){ put("7"); }else if (cmd.equals("btn08")){ put("8"); }else if (cmd.equals("btn09")){ put("9"); }else if (cmd.equals("btn0ze")){ put("0"); }else if (cmd.equals("btn0pu")){ put("+"); }else if (cmd.equals("btn0ma")){ put("ー"); }else if (cmd.equals("btn0ka")){ put("X"); }else if (cmd.equals("btn0wa")){ put("÷"); }else if (cmd.equals("btn0ce")){ put("ce"); }else if (cmd.equals("btn0iko")){ put("="); }else if (cmd.equals("btn0back")){ put("bs"); }else if (cmd.equals("btn0zero")){ put("00"); } } static void put( String str ) { System.out.println( str ); } }
試したこと
public void actionPerformed(ActionEvent e){
・・・
}
のvoidをintにしてみましたが、
denpart0203.java:187: エラー: '.class'がありません
return int x;
^
エラー1個
とでできました。
補足情報(FW/ツールのバージョンなど)
java jdk-14.0.2
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。