Включите развернутые приложения для обработки графических событий, позволяя окнам рисунка оставаться отображенными
void mclWaitForFiguresToDie(HMCRINSTANCE instReserved)
Вызывающие void mclWaitForFiguresToDie позволяет развернутому приложению обрабатывать графические события.
NULL является единственным параметром, принятым для MATLAB® Образец среды выполнения (HMCRINSTANCE instReserved).
Эта функция может быть вызвана только после был вызван и раньше libraryИнициализировать был вызван.libraryКонечный
mclWaitForFiguresToDie блокирует все открытые рисунки. Эта функция запускается пока не останется видимые рисунки. На данной точке выводится предупреждение о наличии невидимых рисунков. Эта функция возвращается только, когда последнее окно рисунка закрыто вручную - поэтому эта функция должна быть вызвана после того, как библиотека запустит хотя бы одно окно рисунка. Эта функция может быть вызвана несколько раз.
Если эта функция не вызывается, то на короткое время появляются любые окна рисунка, отображаемые приложением, а затем приложение выходит.
Примечание
mclWaitForFiguresToDie блокирует вызывающую программу только для фигур MATLAB. Он не блокирует Java® GUI, ActiveX® управляет и другими графические интерфейсы пользователя, отличными от не-MATLAB, если они не встроены в графическое окно MATLAB.
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);
}
mclInitializeApplication | mclRunMain | mclTerminateApplication