高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

Today Screen API

 PocketPCのToday画面に月齢を表示させたい!ということで、Today Screen APIに着手。まったく、何やってるんでしょうね(^_^;
Today Screen APIについては、まったくと言っていいほど情報がありません。tdLaunchなどがオープンソースなので、それを参考にすればいいという掲示板の投稿はありましたが…。見ては見たものの、どれがどう関連しているのか、せめて少しでもドキュメントがあればな…。


 というところで、海外のページを含めて検索すると、やっと少しだけデータが引っかかります。わたしもたいしたことは全然やってないつもりでいたんですが…。いつの間にか英語のページの参照率がずいぶん上がったなぁ…。

 おかげさまで、少しではありますが英語が読めるようになってきました。相変わらずポップアップ翻訳*1などは手放せませんが、それでもこれと本文を比較しながら読むことで、ようやく意味がわかるようになりました。まだ一部怪しいですけど。わたしも成長したなぁ…。
 そういえば、友達が「英検4級くらい受けられるんじゃない?」と言ってきます。彼は英語が全く読めない(ごくごく簡単な英単語もちょっと怪しいくらい)ので、そこから見るとかなりすごいようには見えるのかもしれませんが…。
でも、少しは通用するんだろうか?今度の機会に、ちょっと調てみようっと…。

今回の参考サイト


 しかし、tdClockのソースも見てみたのですが、WM_CREATEとWM_TIMERに

GetLocalTime(&systim);
SetTimer(hWnd, ID_CLOCK_TIMER, (systim.wSecond % 10) * 1000, NULL);

という記述があるのですね。毎回WM_TIMERがくるごとに、タイマーを作り直しているというのはわかるのですが、不可解なのが(systim.wSecond % 10) * 1000という記述。秒の一桁目の秒数後にタイマーを発生させてるということでいいのでしょうが、ならばなぜこんな面倒なことをしているのでしょう?


 残念ながらこれは、XP Homeでは使えないようです(プロジェクトを開こうとするとエラーがでるようになってしまいました)。こんなことにHomeを使う人はいないのでしょうが、それでもせめてもうちょっと、何とかしてほしいです(/_;)。あまりにもHomeの扱いが悪すぎるような…

*1:Firefoxの拡張の一つ、これでExciteを使ってプログラム系の文章を翻訳すると、ほどほどましな文章が出てきます