Effacer les filtres
Effacer les filtres

Drag and Drop - MatLab AppDesigner

53 vues (au cours des 30 derniers jours)
Koussou Axel
Koussou Axel le 9 Jan 2024
Modifié(e) : Prof. X le 29 Fév 2024
Hi,
I'd like to a drag and drop a file to put it on the graphic interface of an App created with the Matlab AppDesigner but I didn't find out how. The drag and drop must be from a .mat file located on my computer to an Edit Field (Text) component, in order to be then reused through the program.
Any help would be appreciated :)
Thank you in advance for your answers
  2 commentaires
Mehmed Saad
Mehmed Saad le 9 Jan 2024
is drag and drop necessary? you can use uigetfile as an alternative
Koussou Axel
Koussou Axel le 9 Jan 2024
Hi,
Thank you for your return.
Yes, I'm aware of uigetfile, which works perfectly. However, drag and drop would be much more convenient and faster.
Regards

Connectez-vous pour commenter.

Réponse acceptée

Prof. X
Prof. X le 12 Jan 2024
Modifié(e) : Prof. X le 15 Jan 2024
Have you seen this? It is a file drag and drop for uifigures.
I have used it with some success.
  2 commentaires
Koussou Axel
Koussou Axel le 29 Fév 2024
Hi,
Sorry for my late response and thank you for your return.
This is exactly what I was looking for. However, it works with a uifigure, and I'm trying to drag and drop files must be from a .mat file located on my computer to an Edit Field (Text) component of an App.
Do you know how I can proceed?
Thank you in advance,
Regards
Prof. X
Prof. X le 29 Fév 2024
Modifié(e) : Prof. X le 29 Fév 2024
It works for edit fields. I have included a sample .mat file for a test. Here is a quick script I wrote up and assuming you have the DnD_uifigure.m in your path, you will see you can drag files to the edit field and then load the data into field. Hope that helps and you have blessed day!
function TestDragandDrop
EditField = uieditfield(uifigure);
DnD_uifigure(EditField, @(EditField,File)CheckFile(EditField,File));
end
function CheckFile(EditField,File)
% Assuming your mat file has a .mat extension
[Path,FileName,Extension] = fileparts(File.names);
if strcmp(Extension,'.mat')
Data = load(File.names{:},'-mat');
EditField.Value = num2str(Data.Answer);
end
end

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Develop Apps Using App Designer dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by