Q41:@「メソッド処理結果」にはどのような値が設定されているのでしょうか。
A変数コンポーネントにパネルとタブの格納変数がほしい。
B最下位の「GUI複合コンポーネントパネル」が領域全体に表示されません。
C動的に帳票のレイアウトを変更したい。
D「メソッド処理結果」のオブジェクトに対してメソッドを起動させたい。
Q41-1:
@「ファンクション」コンポーネントで「ファンクションの呼び出し」のメソッドを起動したとき、「メソッド処理結果」が生成されますが、これにはどのような値が設定されているのでしょうか?
A変数コンポーネントにパネルとタブの格納変数がほしいのですが、「変数コンポーネント実装」を使えば、新たな格納変数が作れるのでしょうか?ただし、その場合、互換性は失われないのでしょうか?(classファイルがないと動かないとか・・・)また、今後のバージョンで格納変数を増やす予定はありますか?
B以下の構成でコンポーネントを作成し、
すべてレイアウトを領域配置にしても、最下位の「GUI複合コンポーネントパネル」が 領域全体に表示されません。「スクロールパネル」を使って下位のパネル類を領域全体に表示させることはできますか?
【フレーム】
┗【スクロールパネル】、
┗【GUI複合コンポーネントパネル】
C構築したアプリケーション実行時に帳票編集の画面を呼び出すなどして、動的に帳票のレイアウトを変更したいのですが、できますか?
D「メソッド処理結果」のオブジェクトに対してメソッドを起動させたいのですが、できますか?(一時的にコンポーネント格納変数を使ってメソッドを起動する方法以外で)
A41-1:
@「メソッド処理結果」についてご説明致します。
同じイベントに繋がっている2つ以上の処理のうち、先に処理の終わっているメソッドの戻り値を、後の処理で取得することができます。
[ファンクション]コンポーネントに限らず、戻り値のあるメソッド(例:○○を取得する)を実行すると「取得方法:メソッド処理結果」を使うことができます。特に引数を必要とするメソッドの戻り値取得の際には、先にそのメソッドを実行し、後の処理で「取得方法:メソッド処理結果」とします。
[ファンクション]の場合、「イベント:処理要求イベント」が出ます。
「処理要求イベント」には一番最後に処理の行われた結果を戻り値として取得する性質があり、[ファンクション]の「メソッド:ファンクションの呼び出し」を実行の際の戻り値となります。
[ファンクション]については「複合コンポーネントチュートリアル」をご覧下さい。
A[変数コンポーネント実装]コンポーネントは、変数コンポーネントの機能実装部分のプログラムを生成します。変数コンポーネントに格納するクラスの完全名およびプログラムの 出力先ファイルを指定すると、そのクラスの公開メソッドを呼び出すプログラムを 書き出します。
[変数コンポーネント実装]コンポーネントのメソッドについては
ドキュメントインデックスのJAVAdocの「PFVariableImplementer」のページをご覧下さい。
また詳しい文書はありませんが、AP_DATA\Sample内の「VariableImplementerSample.mzax」が[変数コンポーネント実装]コンポーネントの機能を紹介するためサンプルとなっています。
あるいは[コンポーネント格納変数]コンポーネントを使って、目的のコンポーネントを格納することができます。主なメソッドは
「コンポーネントを設定する(PFComponent)」
「起動メソッド名を設定する(String)」
(格納したコンポーネントにあるメソッド名を設定します)
「起動メソッドに引数を設定する(String, Object)」
「起動メソッドを実行する()」 です。
Bスクロールパネルは内部のコンポーネントがスクロールパネルよりサイズが大きくなった時、スクロールバーを表示するという性質を持っており、常に中央に配置することは困難です。
C[帳票]コンポーネントの印刷プレビュー画面からも「帳票編集」で行うのと同様の編集作業を行うことができます。アプリケーションローダーで起動時でも可能ですので、お試し下さい。
Dオブジェクトは[オブジェクトバッファ]コンポーネントに入れることができます。AP_DATA\Sample内にサンプルアプリケーション「変数とオブジェクトバッファ_2.mzax」がございます。
簡単な説明文書をドキュメントインデックスの「サンプル(変数とオブジェクトバッファ)」から見ることができます。
また、別な処理の流れで「メソッド処理結果」で取得した戻り値を使いたい場合、[ファンクション]コンポーネントの「メソッド:ファンクションの呼び出し」の引数として設定し、
「取得方法:メソッド戻り値、コンポーネント:ファンクション
メソッド/値:第○引数の取得」として[ファンクション]の引数を他のコンポーネントのメソッド実行時に利用することもできます。