« GSPlayer2.22aをWindows Mobile 2003(Pocket PC 2003)用にビルドする手順 | Main | 続・NS Basic/PalmでWristPDAのラージフォントを使う »

2005.11.17

NS Basic/PalmでWristPDAのラージフォントを表示する

NS Basic/Palmは、標準的な方法だとFont ID 7までのフォントしか使えず、WristPDA上で見ると、文字が小さくて辛いですが、NSBSystemLibを使った師の教えを実行したら、NS Basic/PalmでもWristPDAのラージフォント(Font ID 18, 23)を表示できました。

この手は以前書いたようにDrawCharでしか使えないようなので、Fieldなどのコントロール内の文字を大きくすることはできませんが、それでも助かることは確か。

スクリーンショットのボタン上のデカテキストは、ボタンのLabelを空白にしておいて、その上にDrawCharsで座標合わせて描いてます。名付けてUniFEP方式(w
POSE上では描いている様が丸分かりですが(VirtualPC上のPOSEなもんで)、WristPDAの実機では大丈夫。
FormのAfterに書いておけば、画面を変遷するアプリでも、ちゃんとFormの描画時に描き直してくれるので大丈夫。ボタンを押したときの反転においても、四角いフチが露呈するというようなことも無く、実に自然。

Fieldで文字入力するときの文字を大きくできないのが実に残念ですが……。

追記:ちょ、ちょっと待った。Fieldは同じNSBSystemLibのFieldSetFontでできそうではないか。後で試します……。

LargeFont

'スタートアップで共有ライブラリ読み込み。実行環境にもNSBSystemLib.prc必要。

Sub Project_Startup()

LoadLibrary "NSBSystemLib", "NSL"

End Sub

'FormのAfterで文字を直接描画。

Sub Form1003_After()

Dim res as Integer

'フォームに直接書く
res = NSL.FontSetFont(18)
DrawChars "テスト(Font ID 18)" ,2 ,30

res = NSL.FontSetFont(23)
DrawChars "テスト(Font ID 23)" ,2 ,60

res = NSL.FontSetFont(7)
DrawChars "テスト(Font ID 7)" ,2 ,90

res = NSL.FontSetFont(18)
DrawChars "ボタン" ,55 ,128

End Sub

----
検索用: nsbasic

|

« GSPlayer2.22aをWindows Mobile 2003(Pocket PC 2003)用にビルドする手順 | Main | 続・NS Basic/PalmでWristPDAのラージフォントを使う »