Using uiimport and subsequent coded commands

18 次查看(过去 30 天)
Hi guys -
I call uiimport in a GUI to import data, and in the GUI after that call I have some commands that operate on data that is imported. The problem I'm having is that in order to complete the data import using uiimport one has to click the "finish" button in the uiimport window, and before I can do this my code has moved on and attempted to execute operations on variables whose import is not complete. I need to make my code wait until the uiimport action is complete before moving on. Any thoughts?

采纳的回答

Lucas García
Lucas García 2012-1-9
Hi Jason,
In order for your code to wait until uiimport has finished, make sure you request a return value from uiimport.
S = uiimport;
a = 2;
'a' will not be created until the user has finished importing.
  1 个评论
Kenneth Freeman
Kenneth Freeman 2021-1-14
Asking for a return value forces use of the Import Wizard which has fewer options than the Import Tool.

请先登录,再进行评论。

更多回答(3 个)

Jason
Jason 2012-1-9
Simple but effective. Thanks Lucas!

Kenneth Freeman
Kenneth Freeman 2021-1-14
Asking for a return value forces use of the Import Wizard which has fewer options for hex data than the Import Tool. Any suggestions for this problem with no return value?

Kenneth Freeman
Kenneth Freeman 2021-1-14
If you don't mind the printouts, the folloiwing code worked for uiimport with no return value. You need to name the returned item importedData to match the existence check. With multiple return variables not sure how to tell which one will be the last one in.
uiimport(filename)
while ~exist('importedData','var')
pause(1)
fprintf('Waiting for importedData\n')
end
The printouts start occuring immediately after the import tool window appears.

类别

Help CenterFile Exchange 中查找有关 Workspace Variables and MAT-Files 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by