GUI edit box with the desktop path MAC

5 views (last 30 days)
Hello, I am trying to set the box with the desktop path in Mac I get the user name using
if true
user_name = java.lang.System.getProperty('user.name');
set(handles.edit1,'String',['/Users/',user_name,'/Desktop']);
end
This is working in windows pc but not in mac. I receive The following error occurred converting from char to opaque: Undefined function 'opaque' for input arguments of type 'char'.
Any idea why it is not working?

Accepted Answer

Geoff Hayes
Geoff Hayes on 13 Jan 2016
Erdem - look closely at the data type for user_name
user_name = java.lang.System.getProperty('user.name');
class(user_name)
ans =
java.lang.String
user_name is not a MATLAB character (char) array but is a string object instead. You need to convert this to a MATLAB character array using char as
user_name = char(java.lang.System.getProperty('user.name'));
set(handles.edit1,'String',['/Users/',user_name,'/Desktop']);
Try the above and see what happens!

More Answers (1)

Walter Roberson
Walter Roberson on 13 Jan 2016
Why are you not using
set(handles.edit1, 'String' fullfile(getenv('HOME'), 'Desktop'))

Categories

Find more on Environment and Settings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!