Latex interpreter for "Edit field" label in App Designer

30 visualizaciones (últimos 30 días)
Filippo Ambrosino
Filippo Ambrosino el 26 de Mzo. de 2021
Editada: Mario Malic el 9 de Jun. de 2021
Hi everyone,
I'm currently developing a GUI by using Matlab R2021a App Designer. I need to have an "Edit field" label interpreted with latex whose fontsize should be 14. I alreay set the app.EditFiledLabel.fontsize = 14 property in the TEXT inspector and it works proprly. Unfortunately, every time the app is restared the label fontsize always comes back to 12 without any possibility to be modified. I tried to specify the app.EditFiledLabel.fontsize = 14 property at the startup and in some callbacks with no result.
Did anyone have the same issue? Are there suggentions to solve the problem?
Thank you all.
Filippo
  3 comentarios
Filippo Ambrosino
Filippo Ambrosino el 27 de Mzo. de 2021
Editada: dpb el 28 de Mzo. de 2021
Hi,
the creation code is correct. I append it here below:
app.EccentricityeEditFieldLabel = uilabel(app.OrbitalparametersPanel);
app.EccentricityeEditFieldLabel.Interpreter = 'latex';
app.EccentricityeEditFieldLabel.FontSize = 14;
app.EccentricityeEditFieldLabel.Position = [2 251 124 22];
app.EccentricityeEditFieldLabel.Text = 'Eccentricity (e):';
The problem arises whenever I restart the app because the label fontsize is no longer 14 but 12 indeed. This happens only if I use the latex interpreter.
Cheers,
Filippo
dpb
dpb el 27 de Mzo. de 2021
Well, that would then seem to be a bug.
The suggestion in the TMW link I referred to above was that the workaround for lack of LaTeX interpreter would be to generate the string outside and put it into the field externally/manually. This is obviously limited to static text, of course.

Iniciar sesión para comentar.

Respuesta aceptada

Mario Malic
Mario Malic el 27 de Mzo. de 2021
Editada: Mario Malic el 9 de Jun. de 2021
Hi Filippo,
It seems like a weird bug, but this code makes it work. If you add drawnow in startupFcn, the FontSize can be changed, but make sure that the font size is different from the number in the component browser, otherwise it won't be changed.
Credits to TMW Customer Service
function startupFcn(app)
drawnow
app.EditFieldLabel.Text= '\[ x^n + y^n = z^n \]';
app.EditFieldLabel.FontSize = 25;
end
  5 comentarios
Mario Malic
Mario Malic el 31 de Mzo. de 2021
Editada: Mario Malic el 31 de Mzo. de 2021
Edit: I have updated the answer.
I guess there are some issues with the App Designer, as I've changed it from outside, using the command window.
I have reported this as a bug, so, probably will be fixed in the next update.
What you can also try is to write a function or a script that finds the app handle and changes the fontsize. Then call the script in StartupFcn. I'll try that later unless you do it first.
Filippo Ambrosino
Filippo Ambrosino el 1 de Abr. de 2021
Hi Mario,
thanks a lot, your workaround is working! However if you use the latex interpreter, I verified that each property of text label is affected by this weird bug (not only the fontsize).
Anyway, many thanks again.
Cheers,
Filippo

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Develop Apps Using App Designer en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by