Latex interpreter for "Edit field" label in App Designer

29 次查看(过去 30 天)
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 个评论
Filippo Ambrosino
Filippo Ambrosino 2021-3-27
编辑:dpb 2021-3-28
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 2021-3-27
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.

请先登录,再进行评论。

采纳的回答

Mario Malic
Mario Malic 2021-3-27
编辑:Mario Malic 2021-6-9
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 个评论
Mario Malic
Mario Malic 2021-3-31
编辑:Mario Malic 2021-3-31
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
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

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Develop Apps Using App Designer 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by