今回は時計ウィジェットについて。FT800では、CMD_CLOCKを使うことで簡単にアナログ時計を描画することができます。使い方は、
という感じ。中心位置と半径で時計の位置と大きさを指定して、時刻データを引数として渡すだけでアナログ時計のできあがりです。もちろん、FT800は描画するだけですので、針を動かすためにはホスト側から時刻データを更新して、繰り返して呼び出す必要があります。
アナログ時計を模していますので、秒針の進み方もアナログ的。ちゃんと、途中の位置も表示可能。msを0として1秒毎に値を更新してやれば、秒針はチクタクと1秒毎に進んでいきますが、50ms毎に更新してやれば秒針も連続的にスゥーっと動いているかのように見えます。
このように簡単に時計が秒ができますが、例によって形状を変化させることはできません。描いてくれるのは丸形の時計だけであり、文字盤に数字もふってくれません。必要であれば、自分で装飾を追加する必要有り。その代わり、文字盤無しで針だけとか、秒針しか描かないといったことをoptionで指定可能です。したがって、4角を最初に別途描画しておき、その上に針だけを描画すれば、角の四角い時計も作れるということにあります。
Ft_Gpu_CoCmd_Clock(phost, x, y, r, option, hour, min, sec, msec);
という感じ。中心位置と半径で時計の位置と大きさを指定して、時刻データを引数として渡すだけでアナログ時計のできあがりです。もちろん、FT800は描画するだけですので、針を動かすためにはホスト側から時刻データを更新して、繰り返して呼び出す必要があります。
アナログ時計を模していますので、秒針の進み方もアナログ的。ちゃんと、途中の位置も表示可能。msを0として1秒毎に値を更新してやれば、秒針はチクタクと1秒毎に進んでいきますが、50ms毎に更新してやれば秒針も連続的にスゥーっと動いているかのように見えます。
このように簡単に時計が秒ができますが、例によって形状を変化させることはできません。描いてくれるのは丸形の時計だけであり、文字盤に数字もふってくれません。必要であれば、自分で装飾を追加する必要有り。その代わり、文字盤無しで針だけとか、秒針しか描かないといったことをoptionで指定可能です。したがって、4角を最初に別途描画しておき、その上に針だけを描画すれば、角の四角い時計も作れるということにあります。