Javaで時計を表示するプログラムを勉強しています。
以下の問題がどうしても解決できず、困っています。
よろしくお願いいたします。
発生しているエラー
Main.java:37: error: bad operand types for binary operator '+' h = h + zone; ^ first type: int second type: JTextField
該当のソースコード
Java
1import java.awt.event.* ; 2import javax.swing.*; 3import java.util.*; 4 5public class ClockPanel extends JPanel implements ActionListener 6{ 7 private JLabel label; // comment 8 private JButton button; 9 private JTextField zone ; 10 private JTextArea results ; 11 private int d = 04; 12 private int mt = 06; 13 private int y = 2020; 14 private int h = 14; 15 private int m = 50; 16 private int s = 06; 17 18 // constructor 19 public ClockPanel ( ) 20 { 21 label = new JLabel("Current time : 04/06/2020 14:50:06 UTC+1\nPlease input new time zone"); 22 zone = new JTextField( 3); 23 button = new JButton("Calculate"); 24 results = new JTextArea("New time zone",5,10); 25 26 add ( label ) ; 27 add ( zone ) ; 28 add ( button ); 29 add ( results ) ; 30 results.setEditable(false); 31 button.addActionListener(this) ; 32 zone.addActionListener(this) ; 33 } 34 35 public int calHour() 36 { 37 h = h + zone; 38 return h; 39 } 40 41 public void actionPerformed (ActionEvent e ) 42 { 43 44 if (h >= 24) 45 { 46 h %= 24; 47 d = d + 1; 48 }else if (h < 0) 49 { 50 h = Math.abs(h) ; 51 d = d - 1; 52 } 53 54 55 String toScreen = "New time : "+d+"/06/2020 "+h+":50:06"; 56 results.setText (toScreen); 57 } 58 // end actionPerfomed 59} // end class 60 61
試したこと
どこに書き直しても、新しくコンストラクターを追加して計算させても同じエラーになります。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/23 06:53
2020/06/23 06:59
2020/06/23 07:12
2020/06/23 07:13
2020/06/23 07:18
2020/06/23 07:23
2020/06/23 07:30
2020/06/23 07:31
2020/06/23 07:36
2020/06/23 07:42
2020/06/23 07:55