WPFのウィンドウ系Tips
WPF関係の記事メモです。
これで、「全画面表示・常に最前面・タイトルバー無し」という画面が作れます。
記事 1つ目
WPFのウィンドウをフルスクリーンで表示する - amberfrog.log
WPFで、ウィンドウを最大化して表示するときはWindowStateをMaximizedに設定すれば良い。
さらに、常に最前面化する場合は、Window要素に Topmost="True" を追加する。
記事 2つ目
ざっちのーと 【WPF】【C#】タイトルバーのないWindowの移動
WindowのWindowStyle を "None" に
余談
画面要素が何もない状態でこのウィンドウをデバッグ実行してしまい、パソコンの画面を乗っ取られて途方に暮れるのはきっと僕だけ。
「Alt + F4」でウィンドウを閉じて、なんとか脱出できます。
CDプレーヤー
シンプルなCDプレーヤーを買いました。 無印良品の壁掛けのやつです。
機能も大したことないし、音質も良くないんですけど、これでいいんです。
音楽との距離感
近年の便利な音楽事情は、音楽を僕らの近くに持ってきてくれてるように見えますが、僕にとっては逆なように感じてて、「いつでも聴ける」という便利さのせいでむしろ音楽を聴かなくなってたり、雑に聴いちゃう傾向があります。
原点回帰的な
棚からCDを選んで、CDケースからディスクを取り出してプレーヤーへセット。再生ボタンを押すことで流れてくる音楽。 聴き終わったら、大事にCDケースにディスクを片付ける。
そんな中学時代っぽい音楽との接し方をしたいなと。 というか、そういう接し方の方が健全なんじゃないかと思って。真摯な接し方というか。
うまく表現できませんが、なんかそんな感じです。
最近、音楽に限らず、いろんなものに対してそういう考え方をすることが多いです。歳のせいでしょうか。
単語力(2)
「まずは単語力を徹底的に身につけたら、けっこう(TOEICの)点数あがるような気がしました」という仮説をたてたことをすっかり忘れてました。
というわけで、「毎日6単語」×「半年(180日)」=「1080単語」という数式を掲げて再スタートしたところです。結果は追ってご報告します。
以前は、英語なんて勉強する必要ないと考えてきたんですけど、最近、すこし考え方が変わってきてまして、英語ができることで広がる世界っていうのもけっこう大事なんじゃないかと。
以前、とあるエンジニアな方が「英語はできたほうがいい。日本のエンジニアは技術力は高いけど、英語を軽視する傾向が合って、そのせいで周りとの格差が広がっちゃう」的なことをおっしゃっていまして、なるほど一理あるなというわけです。
Panoramio APIを使ってみました
アプリケーション内で風景写真を使いたくて、Panoramio APIを使わせて頂きました。メモを残しておきます。
細かい利用規約などはありますが、ステキな風景写真を手軽に取得できるのでオススメです。
Panoramioとは
Panoramio(パノラミオ)はGoogle社の運営する地域情報が付加された無料写真共有サイトである。Panoramioにアップロードされた写真はGoogle EarthやGoogle マップ上に表示される。ただし、Google EarthやGoogle マップ上に表示される画像は位置情報を付けることや風景写真であることなど後述のいくつかの条件を満たすことが求められ、審査後数日で随時追加されている。このサイトの目的は、地域を訪れたユーザーが写真を掲載することにより、Google Earthのユーザーがより豊富な情報を得られるようにすることである。多くの言語に対応しており、日本語でも利用可能である。
Panoramio APIについて
Panoramio - API. Display photos from Panoramio on your own website
詳しくは、上記の本家サイトで確認して頂きたいのですが、概要だけ載せておきますね。
APIの形
下記のフォーマットでURLアクセスすると、写真の情報が返却されます。パラメータ部分で写真の抽出条件を指定することができます。
http://www.panoramio.com/map/get_panoramas.php?{パラメータ}
パラメータ
パラメータとして指定できる項目は以下です。詳しくは本家サイトで確認してください。
- 写真セットの抽出対象(set=)
- 写真サイズ(size=)
- 写真表示領域の最小経度(minx=)
- 写真表示領域の最小緯度(miny=)
- 写真表示領域の最大経度(maxx=)
- 写真表示領域の最大経度(maxy=)
- 表示する写真の範囲(from=,to=)
- 地図フィルターの有無(mapfilter=)
パラメータ指定の例です。
http://www.panoramio.com/map/get_panoramas.php?set=public&from=0&to=20&minx=-180&miny=-90&maxx=180&maxy=90&size=medium&mapfilter=true
返却値
返却値はJSON形式です。以下に例を載せておきますが、詳しくは本家サイトで確認してください。
{ "count": 773840,"photos": [ { "photo_id": 532693, "photo_title": "Wheatfield in afternoon light", "photo_url": "http://www.panoramio.com/photo/532693", "photo_file_url": "http://static2.bareka.com/photos/medium/532693.jpg", "longitude": 11.280727, "latitude": 59.643198, "width": 500, "height": 333, "upload_date": "22 January 2007", "owner_id": 39160, "owner_name": "Snemann", "owner_url": "http://www.panoramio.com/user/39160", }, { "photo_id": 505229, "photo_title": "Etangs près de Dijon", "photo_url": "http://www.panoramio.com/photo/505229", "photo_file_url": "http://static2.bareka.com/photos/medium/505229.jpg", "longitude": 5.168552, "latitude": 47.312642, "width": 350, "height": 500, "upload_date": "20 January 2007", "owner_id": 78506, "owner_name": "Philippe Stoop", "owner_url": "http://www.panoramio.com/user/78506" }, ... ] }
利用規約
Webサイトやアプリで写真を表示するにあたり、いくつかの規約があります。以下にポイントを載せておきますが、詳しくは本家サイトで確認してください。
- Panoramioという名称とロゴを掲載する。
- 1ページに表示する写真数は50までとする。
- 写真自体に、その写真ページのリンクを付ける。
- 写真の下部に「Panoramio 写真は所有者の著作権により保護されています」と掲載する。
- 中サイズ、元サイズの写真を使用した場合は、写真の下部か横にPanoramiaのロゴと撮影者名を掲載する。
- 撮影者名には、撮影者のユーザページへのリンクを付ける。
- 写真タイトルには、写真ページへのリンクを付ける。
参考にさせて頂いた記事
Windowsストアアプリで地図を使ってみました
Windowsストアアプリに地図を使いたくて、親和性が高いであろうということで Bing Mapsを採用してみました。メモを残しておきます。
準備1: Bing Maps Account Center
まずは、Bing Maps利用に必要なアカウントを作りましょう。 アカウント登録に必要な情報はメールアドレスくらいだったと思います。
Home - Bing Maps Account Center
登録後、利用予定のアプリ名を入力することで、利用キーを払いだします。
キーは、アプリ毎に払いだす必要があります。
準備2: Bing Maps SDK for Windows 8.1 Store apps
VisualStudioに Bing Maps SDKをインストールします。 これをインストールすると、Bing Mapsを使ったプロジェクトテンプレートが使えるようになります。
Bing Maps SDK for Windows 8.1 Store apps extension
試してみましょう
準備OKです。プロジェクトを作って動かしてみましょう。
Visual Studioで、新しいプロジェクトを作成します。選択するテンプレートは、Bing Maps Applicationです。
プロジェクト作成後、MainPage.xamlを開いて、INSERT_YOUR_BING_MAPS_KEYの部分に 先ほど払いだしたBingMapsの利用キーを入力します。 これでBingMapsが使えるようになります。
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <bm:Map x:Name="map" Credentials="INSERT_YOUR_BING_MAPS_KEY"> </bm:Map> </Grid>
次に、Package.appxmanifestを開いて、機能タブで「場所」にチェックを入れておきます。これで位置情報を使うことができます。
このままの状態で、デバッグ実行してみましょう。 プラットフォームは、x86かx64を選んでください。
アプリケーション内にBingMapが組み込まれた状態でアプリ起動することが確認できたと思います。あとは、自分のコンセプトに従って必要なコーディングを行っていくだけです。
補足
説明上、Bing Maps Applicationテンプレートから作成する方法を記載しましたが、通常のテンプレートからプロジェクト作成して必要なコードを記載することでBingMapsを利用することもできます。
今回ご紹介したテンプレートを見て頂ければ、必要箇所が分かると思います。