Palm Programmer's Laboratory
【NS Basic/Palm】テキストフィールドのフォント変更
[開発情報]
【NS Basic/Palm】テキストフィールドのフォント変更
- NS Basicのテキストフィールドフォントの変更方法についての解説です。
概要
NS Basic/Palmでも、NSBSystemLibを使うことでフォントの種類を変更する事ができます。
このドキュメントでは、手軽なテキストフィールドのフォントの変更方法について説明いたします。
準備
NSBSystemLibを使用するために、Startupサブルーチンに以下のコードを記述してください。
Sub Project_Startup() LoadLibrary "NSBSystemLib", "NSL" End Sub
ついでに、フォームのAfterサブルーチンにも以下のコードを記述すると判りやすいでしょう。
なお、ここではFieldオブジェクトを“Field1005”としています。
Sub Form1003_After() Field1005.Text="Hello!" End Sub
コードサンプル(フォントの変更)
フォームにボタンを配置し、以下のコードをボタンオブジェクトの実行コードに記述し実行してみましょう。
Dim objID as Integer Dim fontId as Integer fontId = 7 objID=1005 NSL.FieldSetFont objID, fontId
はい、ボタンを押した瞬間に、テキストフィールドのフォントがLargeBoldに変わったのが分かると思います。
ここでのキモは、“FieldSetFont”というNSBSystemLibの関数です。
この関数は、指定したテキストフィールドのフォントを変更する命令です。
ちなみに、フォントIDとフォントは以下のような関係となっています。
FontID | Font -------+----------------- 0 | Standard 1 | StandardBold 2 | Large 3 | Symbol 4 | Symbol11 5 | Symbol7 6 | LED 7 | LargeBold 50 | Tiny 51 | TinyBold 52 | Small(Tiny) 53 | Symbol(Tiny) 54 | Symbol11(Tiny) 55 | Symbol7(Tiny) 56 | LED(Tiny) 57 | SmallBold
コードサンプル(フォントの選択)
さて、先ほどのボタンオブジェクトの実行コードを以下の物と入れ替えてみましょう。
Dim objID as Integer Dim fontId as Integer fontId = NSL.FontSelect() objID=1005 NSL.FieldSetFont objID, fontId
今度はボタンを押すと、よく見るフォント選択のダイアログが表示され、選択するとテキストフィールドの文字が指定したフォントに変更になるはずです。
もうお分かりだと思いますが、NSBSystemLibの“FontSelect”関数は、フォントの選択ダイアログを表示する関数なのです。
注意点
Small、TinyフォントはPalmOS5.x以降で使用可能です。
コメント
このページの情報に関する誤りや追加情報がありましたら、コメントをお願いします。