MATLAB Answers

Dot indexing is not supported for variables of this type when trying to write value into static text box

11 views (last 30 days)
function text7_CreateFcn(hObject, eventdata, handles)
value=1;
set(handles.text7, 'String', num2str(value))
I am trying to add a value that will be determined by a slider in my GUI into the text of a static text box, but recieve the error message 'Dot indexing is not supported for variables of this type'

  3 Comments

Samuel Leeney
Samuel Leeney on 16 Oct 2020
Any help on this would be much aprpeciated as it is the final part I am stuck on for a project, and have next to no help as teaching is 100% online. Thanks!

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 17 Oct 2020
Do not put anything into the CreateFcn() functions of controls. If you want something to be initialized with a value, then put that value into the String property of the control in GUIDE, not in the CreateFcn.
Now, to get the value of a slider and put it in the text box as you move the slider, you'd put it into the callback function of the slider, not the callback of the text box.
function slider1_CallbackFcn(hObject, eventdata, handles)
value = handles.slider1.Value;
textLabel = sprintf('Slider = %.3f', value);
% Update text box
handles.text7.String = textLabel;

  0 Comments

Sign in to comment.

More Answers (2)

Fangjun Jiang
Fangjun Jiang on 16 Oct 2020
Edited: Fangjun Jiang on 16 Oct 2020
set(hObject, 'String', num2str(value))
see this comment ?
% hObject handle to edit1 (see GCBO)
% handles empty - handles not created until after all CreateFcns called

  4 Comments

Show 1 older comment
Rik
Rik on 17 Oct 2020
The handles struct has not been created yet, so you need to use the handle to the object itself.
Also, do yourself a huge favor and don't use GUIDE for anything you spend more than 10 minutes making. Link
Samuel Leeney
Samuel Leeney on 17 Oct 2020
Like this? set(handles, 'String', num2str(value))
Thanks, I actually tried migrating this across to app designer but it didn't go across properly. I will probably use app designer in the future. We have next to no support from the professor's this year due to the pandemic so have been making quite a few basic mistakes with stuff like this!
Rik
Rik on 17 Oct 2020
No, set(hObject,'String',num2str(value)).
Using a programmatic GUI (and not AppDesigner) offers a wide variety of benefits. I would encourage you to check out the thread I linked in my previous comment.

Sign in to comment.


Walter Roberson
Walter Roberson on 17 Oct 2020
function text7_CreateFcn(hObject, eventdata, handles)
value = 1;
set(hObject, 'String', num2str(value))

  0 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!