2015年11月03日

「Microsoft Small Basic」の新版を使ってみる(34) - 「今月のカレンダー」を作る


「今月のカレンダー」を作るアプリです。「Clock」オブジェクトが中心になります。未だ(?)メソッドが定義されていないので、そのプロパティからは「現在」を中心とした「今月」のカレンダーを作る事にします。


確認アプリのソースはこちらこちらこちらです。




カレンダーは「今日」を含む「今月1日」の曜日(WeekDay)が分かれば、日付のリストをカレンダー上に週分割・配置するので、色々な処理の流れを作る事ができます。ここでは(日記の様に)各日付と記事内容を関連付ける事を想定して、各日にちを意識した処理の流れにしています。
閏年の規則は以下の通りで(こちらを参照)、この処理ロジックも入れています。
  • 4年に一回は閏年
  • 但し100年に一回は閏年ではない平年
  • 但し400年に一回は閏年

サブルーチン「SetMonthDaysArray」は各月が何日まであるかの配列を生成します。
サブルーチン「GetWeekDayPosition」は「今日」の曜日を曜日配列のインデックスに変換し、サブルーチン「Get1stDayPosition」は「今月1日」の曜日を計算しています。
サブルーチン「GetMonthDays」は実際に「今月1日」から順に曜日を配置していきます。

(注:幾つかのパターンで確認をとっていますが、バグがあるかも知れません・・・)



最終的な実行結果はこちらです。



 
posted by 鎌倉太郎 at 09:00| 神奈川 ☁| Comment(0) | TrackBack(0) | 体験利用-プログラミング言語 | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください

この記事へのトラックバック