List App

「 青のページ, 緑のページ」に簡単なアプリを設定します。

前田稔の超初心者のプログラム入門

プログラムの説明

  1. List Frame では Frame を設定して「赤のページ, 青のページ, 緑のページ」に Navigate(遷移)しています。
    今回は、このプログラムをベースに「 青のページ, 緑のページ」に簡単なアプリを設定してみましょう。
    青のページには Button と TextBox を貼り付けて、ボタンのクリックで現在時刻を表示します。
    緑のページには Button と TextBox を3個貼り付けて、TextBox にタイプした値(整数値)の GCM を表示します。
    GCM, LCM の説明は GCM LCM を参照して下さい。
  2. 青のページではボタンのクリックで現在時刻を表示します。
    1. PageBlue.xaml を修正して Button と TextBox を貼り付けます。
          <Grid>
              <Button x:Name="button" Content="NowTime" Margin="40,40,0,0" VerticalAlignment="Top" Click="Button_Click"/>
              <TextBox x:Name="textBox" HorizontalAlignment="Left" Margin="70,100,0,0" Text="TextBox"
                  VerticalAlignment="Top" Width="200"/>
          </Grid>
      
    2. PageBlue.xaml.h に Button_Click 関数を定義します。
          private:
              void Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
      
    3. PageBlue.xaml.cpp の Button_Click() 関数で現在時刻を取得して TextBox に表示します。
      void App1::PageBlue::Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
      {
          Windows::Globalization::Calendar^ cal = ref new Windows::Globalization::Calendar();
          auto longTime = ref new Windows::Globalization::DateTimeFormatting::DateTimeFormatter("longtime");
          DateTime time = cal->GetDateTime();
          String^ str = longTime->Format(time);
          textBox->Text = "Now Time: " + str;
      }
      
  3. 緑のページでは TextBox にタイプした値(整数値)の GCM を表示します。
    1. PageGreen.xaml を修正して Button と TextBox を3個貼り付けます。
          <Grid>
              <TextBox x:Name="data1" HorizontalAlignment="Left" TextWrapping="Wrap" Text="TextBox"
                  VerticalAlignment="Top" Margin="100,100,0,0" Height="48" Width="100"/>
              <TextBox x:Name="data2" HorizontalAlignment="Left" TextWrapping="Wrap" Text="TextBox"
                  VerticalAlignment="Top" Margin="250,100,0,0" Height="48" Width="100"/>
              <Button x:Name="button" Content="Button" VerticalAlignment="Top" Height="50"
                  Margin="180,180,0,0" Width="80" Click="Button_Click"/>
              <TextBox x:Name="textBox" HorizontalAlignment="Left" TextWrapping="Wrap" Text="TextBox"
                  VerticalAlignment="Top" Margin="170,260,0,0" Width="100" Height="48"/>
          </Grid>
      
    2. PageGreen.xaml.h に Button_Click 関数を定義します。
          private:
              void Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
      
    3. PageGreen.xaml.cpp の Button_Click() 関数で最大公約数(GCM)を求めて TextBox に表示します。
      void App1::PageGreen::Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
      {   int  d1,d2;
          d1= _wtoi(data1->Text->Data());
          d2= _wtoi(data2->Text->Data());
          while(d1 != d2)
          {   if (d1 > d2)    d1-= d2;
              else            d2-= d1;
          }
          textBox->Text = "GCM: " + d1.ToString();
      }
      
  4. プログラムを実行すると List View にアイテムが表示されます。
    "(1) Page Red" を選択すると、赤の TextBox が表示されます。
    "(2) Page Blue" を選択してボタンをクリックすると、TextBox に現在時刻が表示されます。
    "(3) Page Green" を選択して、上段の TextBox に二個の数値をタイプしてボタンをクリックすると GCM が表示されます。

[Previous Chapter ↑] List Frame

超初心者のプログラム入門(C/C++)