mclWaitForFiguresToDie
デプロイされたアプリケーションがグラフィックス イベントを処理できるようにし、Figure ウィンドウを表示したままにする
概要
void mclWaitForFiguresToDie(HMCRINSTANCE instReserved)
説明
void mclWaitForFiguresToDie を呼び出すと、デプロイされたアプリケーションがグラフィックス イベントを処理できるようになります。
MATLAB® Runtime インスタンス (HMCRINSTANCE instReserved) で受け入れられる唯一のパラメーターは NULL です。
この関数は、 が呼び出された後、libraryInitialize が呼び出される前にのみ呼び出すことができます。libraryTerminate
mclWaitForFiguresToDie は、開いているすべての Figure をブロックします。この関数は、表示されている Figure がなくなるまで実行されます。その時点で、表示されていない Figure が存在する場合は警告を表示します。この関数は、最後の Figure ウィンドウが手動で閉じられた場合にのみ返します。したがって、この関数は、ライブラリが少なくとも 1 つの Figure ウィンドウを実行した後に呼び出す必要があります。この関数は複数回呼び出すことができます。
この関数が呼び出されない場合、アプリケーションによって最初に表示された Figure ウィンドウが短時間表示され、その後アプリケーションが終了します。
メモ
mclWaitForFiguresToDie は、MATLAB Figure に対してのみ呼び出し側のプログラムをブロックします。Java® GUI、ActiveX® コントロール、またはその他の非 MATLAB GUI は、MATLAB Figure ウィンドウに組み込まれていない限りブロックされません。
例
int run_main(int argc, const char** argv)
{
int some_variable = 0;
if (argc > 1)
test_to_run = atoi(argv[1]);
/* Initialize application */
if( !mclInitializeApplication(NULL,0) )
{
fprintf(stderr,
"An error occurred while
initializing: \n %s ",
mclGetLastErrorMessage());
return -1;
}
if (test_to_run == 1 || test_to_run == 0)
{
/* Initialize ax1ks library */
if (!libax1ksInitialize())
{
fprintf(stderr,
"An error occurred while
initializing: \n %s ",
mclGetLastErrorMessage());
return -1;
}
}
if (test_to_run == 2 || test_to_run == 0)
{
/* Initialize simple library */
if (!libsimpleInitialize())
{
fprintf(stderr,
"An error occurred while
initializing: \n %s ",
mclGetLastErrorMessage());
return -1;
}
}
/* your code here
/* your code here
/* your code here
/* your code here
/*
/* Block on open figures */
mclWaitForFiguresToDie(NULL);
/* Terminate libraries */
if (test_to_run == 1 || test_to_run == 0)
libax1ksTerminate();
if (test_to_run == 2 || test_to_run == 0)
libsimpleTerminate();
/* Terminate application */
mclTerminateApplication();
return(0);
}
バージョン履歴
R2009a で導入