みたいな事でしたが、ここでも注意する事がひとつ。
起動時に行うスクリプトのコンバートでは、ファイル名と同じグローバルプロシージャまでしかコンバートされません。
なので、GUIなんかのコールバックはメインプロシージャの後ろに書くと初回エラーが出ます。
ボタンを押した瞬間にとか。
これは、AUTODESK AREA JAPAN の記事でも書かれていました。
とりあえずファイル名と同じ名前のメインプロシージャは最後に書いとけと言う事ですか。
前振りが長かったですが、本題。
.melファイルをクラスっぽく作成しようとした場合、メインプロシージャが無いのでコンバートされない問題が出てきます。
その場合の対処方法。
まずは、コンソールアプリで、引数が必要なプログラムがヘルプのエラー出力を出すみたいに、
メインプロシージャでグローバルプロシージャのリストをプリントする方法。
グローバルプロシージャを全部書きだすのは面倒ではある。
ま、空のプロシージャでも良いんですけど・・・。
このほかには、source を使用する方法もあります。
指定した.melファイルの内容全てをコンパイルするので、ファイル内の全てのグローバルプロシージャへアクセスする事ができるようになります。
なかなか便利な命令です。
デバッグ中は、シェルフに
{ source "スクリプト名.mel"; メインプロシージャ; }
を追加しておくと重宝します。
本題みじかっ!
0 件のコメント:
コメントを投稿