ヒューリンクステクニカルサポート
更新日: 15/12/14

MRWE : グラフィカル・アプリケーション・フレームワーク

Windows と MacOS のグラフィカルなプログラム・インターフェースを自動的にビルド

生成するアプリケーションに、ネイティブ環境に対応した テキストおよび
グラフィクス用 I/O ウィンドウを自動的に付加できます。

Windows / MacOS 用 Fortran アプリケーション用グラフィカルインターフェースを自動的に生成するには、Absoft の MRWE が問題を解決します。

システム API を覚える必要はありません。 通常、ウィンドウとメニューの付いたアプリケーションを作成する場合、システム API とインターフェースガイドラインの使用法を理解しておく必要があります。しかし、Windows および Mac 版の Pro Fortran に付属している MRWE ライブラリを使うと、メニュー、テキストウィンドウ、グラフィックウィンドウといった Windows 又は Mac スタイルのネイティブ・インターフェースを自動的にプログラムに追加することができます。MRWE は、システム API や ユーザーインターフェースのガイドラインを理解しなくてもウィンドウやメニューの付いたアプリケーションを作成することができるのです。

MRWE は、プログラムにリンクさせることができるプリコンパイルされた Fotran ルーチーン集です。MRWE アプリケーションを作成するのに必要なことは、Absoft Developer Tools インターフェースのダイアログボックスから MRWE オプションを選択するだけです。MRWE を選択すると、MRWE が用意したウィンドウとインターフェースを備えたプログラムがビルドされ、ダブルクリックで起動するスタンドアロンのアプリケーションができあがります。Fortran コードに独自のシステム API コールが含まれている場合は、MRWE を無効にして実行ファイルを作成することができます。

Options ダイアログ

Absoft コンパイラには、Windows または MacOS でシステム API を正しくコールする方法を示すサンプルデータとして MRWE の完全なソースコードが用意されています。必要に応じてソースコードに修正を加えて利用することもできます。

MRWE の使用:

プログラムと MRWE が動作する仕組み

MRWE ウィンドウへの標準入出力は、FORTRAN I/O ユニット 5, 6, 9, および * と事前に接続が確立しています。* を除くこのような I/O ユニットを OPEN 命令文で指定しておくことで、実際のファイルと接続するかわりに、 I/O ユニットと接続するのです。接続していたファイルを閉じると、I/O ユニットと標準入出力の接続が復活します。

別の MRWE テキストウィンドウ・ファイルを開いて、OPEN 命令文で指定した Fortran I/O ユニットと接続することもできます。

MRWE でのテキストの使用

MRWE アプリケーションは、MDI (Multiple Document Interface) タイプのアプリケーションです。アプリケーションのフレーム・ウィンドウ内に複数のドキュメント・ウィンドウを開くことができるものです。MRWE ではテキストとグラフィックの 2種類のドキュメントウィンドウ・タイプが現在サポートされています。アプリケーションのフレーム・ウィンドウに表示される名称は、FORTRAN アプリケーションから取られます。標準入出力に接続するテキストウィンドウの名称は、デフォルトの初期値が Input/Output に設定されていますが、テキストをファイルとして保存するときにその名称は変更されます。

Fortran の OPEN 命令文を使えば、作成されるテキストウィンドウを追加することができます。MRWE ウィンドウには、最大文字数 262144、最大行数 32768 の制限がありますが、これを変更することもできます。MRWE の使用法と詳しい情報はコンパイラのドキュメントをご覧ください。

MRWE でのグラフィックの使用

MRWE アプリケーションをデフォルトで起動した直後は、グラフィックウィンドウは表示されません。グラフィクスウィンドウを使用したい場合は、mrwe_Opengraphics 関数を使用してグラフィクスウィンドウを開くことを記述する必要があります。mrwe_Opengraphics 関数の引数一覧はコンパイラのドキュメントに詳しく記載されています。

MRWE へのメニューコマンドの追加

MRWE は、メニューコマンドの追加、ユーザーのメニュー選択に対応するルーチンの実行、および、メニュー項目の修正など、多数の関数を提供します。MRWE のデフォルトのメニューには新規メニューとメニューコマンドが追加されます。関数の詳細な記述は、コンパイラのドキュメントに詳しく記載されています。