MATLAB GUI event handler

Řešil jsem problém s Matlabem a předáním neznámých z handleru eventu. Klasickým způsobem jako u standardních funkcí to řešit nelze. Vymyslel jsem několik způsobů s mými dosavadními znalostmi – zápis neznámých do .mat souboru, do .txt souboru nebo pomocí globálních proměnných. Zřejmě by také bylo možné (a nejelegantnější, i když složitější) vytvoření vlastní třídy a volání její příslušné metody. Moje řešení mi fungovali při spuštění grafického uživatelského rozhraní přímo z Matlabu, nikoli však po zkompilování aplikace do samostatného .exe souboru. Dlouho mě nic nenapadalo, ale řešení je, jak to už tak bývá, až nemile primitivní. Kompilátor Matlabu nezahrnuje do kompilace soubor s handlerem, pokud mu to výslovně neřeknete. Obecně všechny soubory, na které je ve zdrojovém kódu odkazováno pouze uvnitř nějakého stringu, nejsou do kompilace zahrnuty. Tuto funkci je potřeba ve skriptu definovat jako „%#funcion function_name“ nebo při kompilování pomocí příkazu mmc explicitně doplňkové soubory jmenovat. Takže si na to dejte pozor, pokud narazíte na tuto malou zradu, která se jen špatně odhaluje.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.