こうすけ さん プロフィール

  •  
こうすけさん: C++ に挑戦!
ハンドル名こうすけ さん
ブログタイトルC++ に挑戦!
ブログURLhttp://fanblogs.jp/cplusplus/
サイト紹介文C++を学びながら、理解したことを記述します。 自分と、さらに誰かの役に立つことを願いながら。
参加カテゴリー
更新頻度(1年)情報提供395回 / 265日(平均10.4回/週) - 参加 2017/08/29 10:18

こうすけ さんのブログ記事

  • 《その391》ウィンドウのサイズ取得
  •  ウィンドウのサイズ取得 ウィンドウのサイズ取得は、特にゲームアプリなどを作成するときに必要になることが多いのではないでしょうか。 ウィンドウのサイズはドラッグで簡単に変更できるので、利用者がどんなウィンドウサイズでアプリを利用するのかを事前に知ることはできません。例えば、ウィンドウ内をボールが飛び回るような場面では、壁(右端)や床(下端)の位置がわからないと、ボールの跳ね返り位置を決められません [続きを読む]
  • 《その390》ポインタ位置・マウスボタンの状態 を取得
  •  ポインタ位置・マウスボタンの状態 を取得 前回《389》は、マウスボタンの状態だけの取得でしたが、今回は、ポインタ位置の取得も行います。ポインタが「moving」か「stopped」かも表示するので、例えば、「pressed」と「moving」が同時に表示されていれば ドラッグ中ということになります。 アプリをスタートしました。 ポインタが Page 内を動いています。2つの数値は X-Y座標です。 ポインタが停止しました。 マウスボ [続きを読む]
  • 《その389》マウスボタンの状態取得
  •  マウスボタンの状態取得 今回のアプリは、マウスボタンの状態を取得します。   ・押されている状態   ・    ・ダブル の区別ができれば、ユーザの意思を受け取るのに役立ちます。画面上の特定の画像をダブル することでプログラムの流れを変えるなど、アプリの操作性の向上に役立つと思います。 今回のアプリでは、TextBox以外の任意の場所を、 ,ダブル あるいは マウスボタン [続きを読む]
  • 《その388》ドラッグによる描画(2)
  •  ドラッグによる描画(2) 今回も 前回《387》と同じく、ドラッグによる描画ですが、ペンの色を選択できるようにしました。ラジオボタンで色を選択できるようにしたこと以外は、ほぼ 前回と同様です。 スタート画面です。最初は 黒色ペンが選択状態になっています。 6色で描画してみました。 以下は、MainPage.xaml のコードです。自動で作成されるコードなので、小さいフォントにしました (^^;)確認が必要な場合は、コピ [続きを読む]
  • 《その387》ドラッグによる描画(1)
  •  ドラッグによる描画(1) 今回のアプリは、ドラッグで線を描きます。 Page と同じサイズの Canvas上に描画する仕様です。「消去」ボタンで、画面をクリアします。 以下は、MainPage.xaml.cpp です。//// MainPage.xaml.cpp// MainPage クラスの実装。//#include "pch.h"#include "MainPage.xaml.h"using namespace App8;using namespace Platform.. [続きを読む]
  • 《その385》時計の作成
  •  時計の作成 本ブログの《383》《384》で、時計作成のための準備は完了しているので、今回は、実際に 時計の形にまとめてみました。 以下は、MainPage.xaml.cpp です。//// MainPage.xaml.cpp// MainPage クラスの実装。//#include "pch.h"#include "MainPage.xaml.h"using namespace App5;using namespace Platform;using namespace W.. [続きを読む]
  • 《その384》時計の秒針(2)
  •  時計の秒針(2) 前回《383》の秒針時計を動くようにしました。秒針との対比ができるように、秒のデジタル表示も加えてあります。 DispatcherTimer の span.Duration = 1000000; は、約0.1秒ですが、もっと遅くてもいいと思います(本ブログの《376》をご参照ください)。 直前の秒針を消す Clear関数以外は、既出のものばかりです。Clear関数が無いと、円の中が秒針だらけになってしまいます。 以下は、MainPage.xaml.cpp [続きを読む]
  • 《その383》時計の秒針(1)
  •  時計の秒針(1) 今回と次回で、秒を刻む時計の秒針を作成してみます。長針と短針も、これとまったく同様にして作成できますから、すべての針を重ね合わせれることで時計を完成させることも可能です。 前回《381》と前々回《382》の方法で、円と直線を用意します。円は canvas1上、直線は canvas2上です。 次回に、この直線が秒針として秒を刻むように改造します。 下の画像の秒針は 55秒の位置になっています(下記の Main [続きを読む]
  • 《その382》三角形,五角形 の表示
  • 三角形,五角形 の表示 今回は、三角形,五角形 の表示です。Polygonクラスを利用すれば、何角形でも作ることができます。 以下は、MainPage.xaml.cpp です。////// MainPage.xaml.cpp// MainPage クラスの実装。//#include "pch.h"#include "MainPage.xaml.h"using namespace App4;using namespace Platform;using namespace Win.. [続きを読む]
  • 《その381》楕円,直線,四角形 の表示
  • 楕円,直線,四角形 の表示 今回は、楕円,直線,四角形 の表示についてだけの内容です。 Canvas を3つ用意してそれぞれの図形を独立させているので、 による移動(本ブログの《379》)やドラッグによる移動(本ブログの《380》)等も個別に行えます。また、タイマー(本ブログの《373》〜《378》)を利用して、図形を自動的に動かすこともできるので、例えば、直線を回転させて時計の針に利用するなど、いろいろと応用 [続きを読む]
  • 《その380》ドラッグ操作によるコントロールの移動
  •  ドラッグ操作によるコントロールの移動 今回は、フォーム上に作成した円を、マウスドラッグで動かせるようにするプログラムです。画面上のコントロールをマウスドラックで移動させる方法は、いろいろな場面で利用できると思います。 アプリのスタート画面です。 画面上の円をドラッグして移動させます。 画面上の円をドラッグして移動させます。 以下は、プログラムの説明です。 ◆まず、ツールボックスから Canvas を選択 [続きを読む]
  • 《その379》クリック位置の取得
  •   位置の取得 今回のプログラムは、非常に短いコードですが、 位置を取得する方法はいろいろな場面で利用できる重要事項です。 プログラムの開始時には、鳥が一羽、左上の位置にいます。 画面を すると、鳥は した位置に移動します。今回は、 位置を取得する方法だけの確認なので、余計なコードを省略してあります。そのため、鳥は瞬間移動しますが、ゆっくり移動させたいのであれば、前々 [続きを読む]
  • 《その378》画像の移動(2)
  •  画像の移動(2) 今回は、前回《377》のアプリに色付けしてみただけの内容です。前回のままではちょっと寂しいので、背景色や夕日などを付け足しました。 飛行中の画面全体の様子です。ここのスペースに収めるために縮小してあります。 背景色は、Grid のブラシ用エディターでグラデーションに仕上げました。 [続きを読む]
  • 《その377》画像の移動
  •  画像の移動 今回は、飛行機が左から右に移動するだけですが、飛んでいるみたいに見えなくもないです。 スタートボタンを押すと、飛行機が動き出します。 この画像は画面のコピーなので、動きませんが・・・。 動いています・・・ そのまま画面の外に出てしまうので、適当なところで終了ボタンを押して終了します。◆順序が逆になってしまいましたが、ここから下が、説明です。 飛行機の位置を Margin で指定している箇所以 [続きを読む]
  • 《その376》画像の拡大・縮小(2)
  •  画像の拡大・縮小(2) 今回は、前回《375》のときに触れなかった「拡大・縮小のスピード」についてです。 スピードに関係する部分は2箇所ですが、今回のプログラム(下記)では、【1】 struct C     if (f) value -= 6;     else value += 1;     if (value > 300) f = 1;     if (value < 6) f = 0;【2】 MainPage::StartTimer()     TimeS.. [続きを読む]
  • 《その375》画像の拡大・縮小
  •  画像の拡大・縮小 今回は、画像を徐々に大きくしたり小さくしたりしてみます。拡大・縮小のスピードは、とりあえずデフォルトのままです。スピードの調節は次回に行います。 「お化けの画像が徐々に大きくなり、次に、徐々に小さくなって見えなくなる」この動きを繰り返すだけのアプリです。終了ボタンを押せば、アプリが終了します。 まず、画像とボタンを配置します。※画像の取込みは、本ブログの《368》の方法で行いまし [続きを読む]
  • 《その374》デジタル時計(3)
  •  デジタル時計(3) 前回《372》、前々回《373》で、一応、時計として機能するものができましたが、デジタル時計なので、On-Off ができるようにしたいと思います。 表示(V) -> ツールボックス(X) で ToggleSwitch を選択し、配置します。 ToggleSwitch のプロパティで、スタート時に On の表示になるように、IsOn にチェックを入れます。名前は任意ですが、とりあえず ts にしました。 ToggleSwitch切りかえのイベントハン.. [続きを読む]
  • 《その373》デジタル時計(2)
  •  デジタル時計(2) 今回は、前回《372》で用意したデジタル時計を動くようにします。 スタートボタンやストップボタンなどは、とりあえず後回しにして、まずは、デジタル時計が時を刻むようにしたいと思います。 最初に、ヘッダ MainPage.xaml.h にある MainPageクラスに、StartTimer と OnTick の関数宣言を加えます。 以下は、MainPage.xaml.h です。//// MainPage.xaml.h// MainPage クラスの宣言。//.. [続きを読む]
  • 《その371》C++/CX
  •  C++/CX Visual_Studio_2017 の ユニバーサルWindowsプラットフォーム(略称:UWP)を使用してアプリを開発する手段としては、主に、   (1) 画像等は XAML,プログラムは C++/CX   (2) 画像等は XAML,プログラムは C#   (3) 画像等は XAML,プログラムは VisualBasic.NET   (4) 画像等は HTML & CSS,プログラムは JavaScript.NETの4種類があります。 (1) の C++.. [続きを読む]
  • 《その369》Page_Loaded イベントハンドラ
  •  これまでのプログラムは、すべて、ボタン に対するイベントハンドラでした。 今回のプログラムは「きょうの日付」を表示するだけのものですが、プログラム開始時点のページ読込み完了イベントに対するイベントハンドラになっています。 また、通常の C++ で普通に行われているような、独自の関数を定義して使用したりもしています。定義した関数は、今日の日付を取得する func()、曜日を決定する day_of_week() の2つ [続きを読む]
  • 《その368》画像の表示・非表示
  •  画像の表示・非表示 前回《その367》、プロジェクトに画像を取り込みましたが、今回は、その画像の表示・非表示をボタン で切りかえるアプリを作成します。Button のプロパティを変更します。(名前を "btn" にして、共通 Content を "消去" に変更しました。)ボタンの文字が "消去" に変わりました。稲妻マークを し、Click欄の枠内をダブル します。btn_Click関数の記述画面が表示されるので、コード [続きを読む]
  • 《その367》画像の取込み
  •  今回は、プロジェクトに画像を取り込む方法について だけの内容です。フォーム上に画像を表示させるまでの手順を確認します。ファイル(F) -> 新規作成(N) -> プロジェクト(P)Visual C++ -> Windows ユニバーサル -> 空のアプリ(ユニバーサル Windows)そのまま OKソリューションエクスプローラーで 追加(D) -> 既存の項目(G)表示されるエクスプローラーで、画像を選択します。Assetsフォルダのリストに、.. [続きを読む]
  • 《その367》2行2列の行列計算アプリ
  •  2行2列の行列計算 入力された文字列を数値に変換する手順が、あまりキレイではありませんが・・・。int::Parse を使おうとするとエラーになってしまうので、まわりくどいコードになってしまいました。 MainPage.xaml の コントロール配置図です。 以下は、MainPage.xaml のコードです。自動で作成されるコードなので、小さいフォントにしました (^^;)確認が必要な場合は、コピペしてください m(_ _ )m<Page x:Class= [続きを読む]