2017-01-27 9 views
0

私はフォームクラスでクラス(オブジェクト)のフィールドの値を変更する方法

` class Time_Class 
    { 
     private int minute; 
     private int second; 
     private int hour; 

     //Default constructor 
     public Time_Class() 
     { 
      this.minute = 0; 
      this.second = 0; 
      this.hour = 0; 
     } 

     //Constructor overload 
     public Time_Class(int mm, int ss, int hh) 
     { 
      this.minute = mm; 
      this.second = ss; 
      this.hour = hh; 
     } 

     //Method for setting time 
     public void Set_Time(int mm,int ss,int hh) 
     { 
      this.minute = mm; 
      this.second = ss; 
      this.hour = hh;  
     } 

     //Method of Getting 24 Hour time 
     public string[] Get24Time() 
     { 
      int[] time = new int[3]; 
      time[0] = this.minute; 
      time[1] = this.second; 
      time[2] = this.hour; 

      if (time[1] > 59) 
      { 
       time[1] = 0; 
       time[0] += 1;   
      } 
      if (time[0] > 59) 
      { 
       time[0] = 0; 
       time[2] += 1; 
      } 
      if (time[2] > 24) 
      { 
       time[0] = 0; 
       time[1] = 0; 
       time[2] = 0; 
      } 

      string[] ret = new string[3]; 
      ret[0] = time[0].ToString(); 
      ret[1] = time[1].ToString(); 
      ret[2] = time[2].ToString(); 

      return ret;   
     } 

     //Method of Getting 12 Houur time 
     public string[] Get12Time() 
     { 
      string ampm = "AM"; 
      int[] time = new int[2]; 
      time[0] = this.minute; 
      time[1] = this.second; 
      time[2] = this.hour; 

      if (time[1] > 59) 
      { 
       time[1] = 0; 
       time[0] += 1; 
      } 
      if (time[0] > 59) 
      { 
       time[0] = 0; 
       time[2] += 1; 
      } 
      if (time[2] > 12) 
      { 
       time[0] = 0; 
       time[1] = 0; 
       time[2] = 0; 
       if (ampm == "PM") 
       { 
        ampm = "AM"; 
        goto b; 
       } 
       if (ampm=="AM") 
       { 
        ampm = "PM"; 
       } 

      } 
     b: 
      string[] ret = new string[3]; 
      ret[0] = time[0].ToString(); 
      ret[1] = time[1].ToString(); 
      ret[2] = time[2].ToString(); 
      ret[3] = ampm; 

      return ret;   
     } 
私はWinフォームでこのクラスのオブジェクトを作成したい

`

(Formクラス時のクラスを設計します)、タイマーティックイベントのクラス(オブジェクト)フィールドの値を変更したい。

私はこれが好きです。

Time_Class t1 = new Time_Class(); 

     private void timer1_Tick(object sender, EventArgs e) 
     { 

      //code 
     } 

しかし、タイマーティックでは、このクラスのオブジェクトは呼び出されていません。これはタイマーティックの外側を定義しています。

私はこのクラスのオブジェクトをtimer tickで呼び出し、そのクラス(オブジェクト)のフィールドの値を変更します。

+0

'else'と'他if'制御フロー文を検索し、 'goto'は – pinkfloydx33

+0

はい、それはWindowsフォームのタイマーであり、その有効な特性があることを削除してくださいfalseですが、私はtimer1.Start();のようなLoadフォームイベントでタイマーを開始します。 –

+0

@ pinkfloydx33はい、私はそれをするつもりですが、それは要件に関して重要ではありません。 –

答えて

3

あなたはフィールドを公開する必要があります:

public int minute {get;set;} 
public int second {get;set;} 
public int hour {get;set;} 
+0

はい。今はオブジェクトがタイマーティックで呼び出しています。 –

関連する問題