Гиперссылка приводит к сбою скомпилированного приложения MATLAB - PullRequest
0 голосов
/ 18 октября 2018

У меня есть скомпилированное приложение Matlab, в котором есть графический интерфейс.Этот графический интерфейс также содержит веб-страницу index.html.В html есть гиперссылка на сайт.Я хочу, чтобы matlab загружал веб-страницу во внешнем браузере при нажатии на эту ссылку.в настоящее время я использую гиперссылку:

<a href="matlab:web('http://www.google.com','-browser')">Help</a>

Однако при нажатии скомпилированная программа аварийно завершает работу и немедленно закрывается.Это НЕ происходит, когда я запускаю программу из Matlab;в этом случае он работает как ожидалось (и хотел).Эффект присутствует только при компиляции приложения.Почему это?Есть ли способ исправить это?

РЕДАКТИРОВАТЬ: вот простой проверяемый пример и т. Д.

сначала простой код Matlab:

% Create a blank figure window
f=figure('Name','Browser GUI Fail','Units','norm');

% Add the browser object
com.mathworks.mlwidgets.html.HTMLRenderer.setUseWebRenderer(false);
jObject = com.mathworks.mlwidgets.html.HTMLBrowserPanel;
[browser,container] = javacomponent(jObject, [], f);

set(container,'Units','normalized','Position',[0 0 1 1 ]);
url=['file:/'  which('index.html') ];
browser.setCurrentLocation(url);

секунда, HTMLfile, index.html

<!DOCTYPE html>
<html>
<body>

<p>stuff, anything at all <a href="matlab:web('http://www.google.com','-browser')">Help</a> </p>

</body>
</html>

Ошибка ссылки в скомпилированной версии программы.Я на Windows, и использую 2014b.

1 Ответ

0 голосов
/ 18 октября 2018

У меня была похожая проблема в скомпилированном графическом интерфейсе Windows, и я решил ее, используя вызов dos.

dos('start http://www.google.com');

...