アフィリエイト広告を利用しています

広告

posted by fanblog

2018年04月25日

《その370》Page_Loaded イベントハンドラ


 これまでのプログラムは、すべて、ボタンクリックに対するイベントハンドラでした。
 今回のプログラムは「きょうの日付」を表示するだけのものですが、プログラム開始時点のページ読込み完了イベントに対するイベントハンドラになっています。
 また、通常の C++ で普通に行われているような、独自の関数を定義して使用したりもしています。定義した関数は、今日の日付を取得する func()、曜日を決定する day_of_week() の2つです。

 VS に CalendarViewツールなども用意されているので、日付を表示するだけのプログラムは、あまり意味がありませんが、とりあえず・・・。
今回の例では、C++ の知識がそのまま使えたので、ちょっとホッとしています (・ω・`;)ゞ


フォームの外周部分をクリックして選択します。
add_c010.png


プロパティの右上にある稲妻マークをクリックします。
add_c010.png


Loaded欄の枠内をダブルクリックします。
MainPage.xaml.cpp の編集画面が表示されるので、プログラムを記述します。

add_c010.png



//
// MainPage.xaml.cpp
// MainPage クラスの実装。
//

#include "pch.h"
#include "MainPage.xaml.h"

using namespace App4;

using namespace Platform;
using namespace Windows::Foundation;
using namespace Windows::Foundation::Collections;
using namespace Windows::UI::Xaml;
using namespace Windows::UI::Xaml::Controls;
using namespace Windows::UI::Xaml::Controls::Primitives;
using namespace Windows::UI::Xaml::Data;
using namespace Windows::UI::Xaml::Input;
using namespace Windows::UI::Xaml::Media;
using namespace Windows::UI::Xaml::Navigation;

MainPage::MainPage()
{
InitializeComponent();
}

void App4::MainPage::
cal_SelectedDatesChanged(
Windows::UI::Xaml::Controls::CalendarView^ sender,
Windows::UI::Xaml::Controls::
CalendarViewSelectedDatesChangedEventArgs^ args)
{
// String^ str = cal->SelectedDates->ToString();
// box->Text = str;
// struct tm local = cal->SelectedDates;
}

int y, m, d;

void func() {
time_t timeUTC = time(NULL);
struct tm local;
localtime_s(&local, &timeUTC);
y = local.tm_year + 1900;
m = local.tm_mon + 1;
d = local.tm_mday;
}


String^ day_of_week() {
int yy = y; int mm = m;
if (mm == 1 || mm == 2) { yy--; mm += 12; }
int tmp = (yy + yy / 4 - yy / 100 + yy
/ 400 + (13 * mm + 8) / 5 + d) % 7;

String^ wd[] = {"日", "月", "火", "水", "木", "金", "土"};
return wd[tmp];
}


void App4::MainPage::
Page_Loaded(
Platform::Object^ sender,
Windows::UI::Xaml::RoutedEventArgs^ e)
{
func();
box_y->Text = y.ToString();
box_m->Text = m.ToString();
box_d->Text = d.ToString();
box_wd->Text = day_of_week();

}


MainPage.xaml 画面です。
add_c008.png


実行画面です。
add_c009.png


この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/7588169
※ブログオーナーが承認したトラックバックのみ表示されます。

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

 たまに、クリック お願いします m(_ _)m

 AA にほんブログ村 IT技術ブログ C/C++へ

こうすけ:メール kousuke_cpp@outlook.jp

【1】★★C++ 記事目次★★ ← 利用可能です。
・新版明解C++入門編 / 新版明解C++中級編
・その他 C++ 関連記事

【2】★★こうすけ@C#★★
・C# の初歩的な記事


検索
<< 2018年08月 >>
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
プロフィール
こうすけさんの画像
こうすけ

 たまに、クリック お願いします m(_ _)m

 AA にほんブログ村 IT技術ブログ C/C++へ

こうすけ:メール kousuke_cpp@outlook.jp

【1】★★C++ 記事目次★★ ← 利用可能です。
・新版明解C++入門編 / 新版明解C++中級編
・その他 C++ 関連記事

【2】★★こうすけ@C#★★
・C# の初歩的な記事


×

この広告は30日以上新しい記事の更新がないブログに表示されております。