Screenshot entire window in AppDesigner

100 visualizzazioni (ultimi 30 giorni)
Christian
Christian il 20 Mag 2019
Commentato: Adam Danz il 15 Mar 2024
Hello everybody,
I'm currently building an app using AppDesigner. I want to implement a button, which captures a screenshot from the entire app after it's been pressed. So that I can compare different sets of data afterwards with just a quick look on their screenshots.
Unfortunately I cannot come up with an idea on how to make Matlab screenshot my entire app window. In a regular Matlab script I use the ScreenCapture function from FileExchange, but this seems not to work within AppDesigner.
imageData = screencapture(gcf,[],'myFigure.jpg');
Any suggestions on how to do this?
Since I have multiple tabs it would be ideal to come up with an idea on how to "screenshot" every tab with just one press of a button.
Cheers, Christian

Risposte (1)

Adam Danz
Adam Danz il 1 Nov 2020
Starting in Matlab r2020b, you can take snapshots of an app / uifigure using the functions below.
See demos:
  7 Commenti
Dorian
Dorian il 8 Mar 2024
Modificato: Dorian il 8 Mar 2024
Hello,
I am using the exportapp function with Matlab R2023a and screenshoting my app does not work while having a very simple class :
function JourButtonPushed(app, event)
exportapp(app,'file.png');
end
It says "Specified handle is not valid for export." and there are no mentions of being able to capture the app itself in the help pages for exportapp or getframe. I have also directly tried the example shown in the link you sent, and app.MyApp (after changing MyApp to my actual app name) still claims that "MyApp" is an undefined class, property or field. Am I doing something wrong or were there changes in the most recent versions that hindered the compatibility ? While unrelated I have also experienced such issues with some app components not posessing an Alpha variable for transparency despite older posts being able to handle the transparency of the same components this way, so this is why I think the newer versions may have changed this aswell ?
Adam Danz
Adam Danz il 15 Mar 2024
@Dorian, the first argument needs to be a figure handle.
function JourButtonPushed(app, event)
exportapp(app.UIFigure,'file.png');
end

Accedi per commentare.

Categorie

Scopri di più su Develop Apps Using App Designer in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by