バージョンアップしたら、Visual LANSAフレームワークのフォントとサイズが変わってしまった

World WideのLANSA技術フォーラムに投稿されたトピックと、日本のお客様からのお問い合わせへの回答の中から、皆様にお役に立つLANSAの開発テクニックやトラブルシュートに関する情報をご紹介します。

質問

LANSAV13からV14へバージョンアップしたら、Visual LANSAフレームワークのフォントとサイズが変わってしまいました。

前:MS Pゴシック9pt

後:Meiryo 8pt

コマンドハンドラーに表示している文字のサイズが変わってしまい、フィールドの入力域に表示されているデータが見切れてしまうようになりました。

フレームワークのビジュアルスタイルのドロップダウンの中に同等のサイズのフォントが無いのですが、どうすれば前バージョンと同じフォントにできますか?

回答

LANSAのバージョンの違いによって、VLFで使用しているLANSA提供のVisualStyleに定義されたフォントやサイズが異なるため、今回の事象が発生しております。

ユーザー側で作成したフォントを登録・使用する事で、VLFで利用したいフォントを固定できます。

この設定を行う事で以降のバージョンアップでLANSA提供のVisualStyleのフォントやサイズが変わっても同様の問題は起きなくなります。

1)VisualStyleの作成

既存のVisualStyle(例:VF_VS101J)をコピーします。

例:LJ_VS101J

 

下記2行のFacenameFontsizeプロパティを変更します。

Define_Com Class(#PRIM_VSI) Name(#CAPTION)

Define_Com Class(#PRIM_VSI) Name(#VALUE)

 

例:Facename('MS Pゴシック') Fontsize(9) を指定

 

2)IIP(Imbedded Interface Point:組み込みインターフェース・ポイント)の作成

フレームワークには多数のIIPが組み込まれています。

IIPは、外部公開されるコードが特定の内部(または埋め込み)ロジックを実行するため、フレームワーク稼働中に呼び出される場所にあります。

VLF-WINの場合、デフォルトではUF_SYSTMという再利用可能パーツを使用しています。

 

再利用可能パーツ UF_SYSTM をコピーします。

オブジェクトID8桁以下になるようにしてください。

例:LJ_SYSTM

 

Mthroutine Name(avEnrollVisualStyles) に追加したいVisualStyleを定義します。

* LJ Visual Style

Invoke Method(#Com_Owner.avEnrollVisualStyle) Style(#LJ_VS101J) Caption('MS Pゴシック9pt’)

 

3)フレームワークに自身のIIPを設定

フレームワークのプロパティ → フレームワークの詳細タブ → ユーザー定義インターフェースポイント

に、作成したIIPの再利用可能パーツを指定して、フレームワークを再起動します。

 

4)フレームワークのVisualStyleを設定

2箇所に作成したVisualStyleを指定します。

フレームワークのプロパティ → ビジュアルスタイルタブ → ベーススタイル

アプリケーションのプロパティ → ビジュアルスタイルタブ → ベーススタイル

 

5)実行環境に再配布するもの

フレームワークのXML

IIPの再利用可能パーツのDLL

有償の「LANSAテクニカル・ホットライン・サービス」をご契約いただければ、過去データベースの検索から今回ご紹介した以外の技術情報を探すことも出来ます。 「LANSAテクニカル・ホットライン・サービス」のご契約についてはお問い合わせフォーム(https://www.lansa.jp/inquiryform/)よりお問い合わせください。

LANSAコミュニティに登録する

IBMi(AS/400)をご利用の企業様必読!
LANSAを利用したIBM iの活用方法・成功事例をお届け致します。