showing Results of Serialportlist in a UITextArea

1 回表示 (過去 30 日間)
Jason
Jason 2020 年 11 月 26 日
コメント済み: Avratanu Biswas 2020 年 11 月 27 日
Hello, I would like to display the available ports on my PC using serialportlist("available")
I have come across the evalc..code below
portstring = evalc('display(serialportlist("available"))')
ReportMessage(app,portstring);
Reportmessage is my own function that adds to a textarea
It works except I get some rubbish first:
1×2 <a href="matlab:helpPopup string" style="font-weight:bold">string</a> array
"COM5" "COM10"
Is there a better way to display the results of serialportlist in a uitextarea?
Thanks
Jason

採用された回答

Jason
Jason 2020 年 11 月 27 日
This seems to work
freeports = serialportlist("available")
str=sprintf('%s\t', freeports{1:end});
ReportMessage2(app,['Comms Available: ',str]);
  1 件のコメント
Avratanu Biswas
Avratanu Biswas 2020 年 11 月 27 日
Glad that it worked for you . Using "evalc" never a good idea.( Why Avoid the eval Function? ) - might answer you the reason behind those additional unwanted texts in your very initial post.
Cheers !
A

サインインしてコメントする。

その他の回答 (1 件)

Avratanu Biswas
Avratanu Biswas 2020 年 11 月 26 日
編集済み: Avratanu Biswas 2020 年 11 月 26 日
In case I understood your question correctly, what if you write it in this way
portstring = serialportlist("available"); % instead of using evalc
app.UItextarea.Value = portstring; % using the given name of the UItextarea
  1 件のコメント
Jason
Jason 2020 年 11 月 27 日
Hello, due to me ReportMessage concatenating vertically, this doesn't work.
function ReportMessage(app,msg) %For message box on config tab
currString=get(app.MessagesTextArea2,'Value');
currString=[currString;{char(msg)}]; %add to top of message box
app.MessagesTextArea2.Value=currString;
drawnow;
scroll(app.MessagesTextArea2,'bottom');
Error using matlab.ui.control.TextArea/set.Value (line 101)
'Value' must be a character vector, or a 1-D array of the following type: cell array of character vectors, string, or categorical.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeStructures についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by