Screenshot entire window in AppDesigner

94 Ansichten (letzte 30 Tage)
Christian
Christian am 20 Mai 2019
Kommentiert: Adam Danz am 15 Mär. 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

Antworten (1)

Adam Danz
Adam Danz am 1 Nov. 2020
Starting in Matlab r2020b, you can take snapshots of an app / uifigure using the functions below.
See demos:
  7 Kommentare
Dorian
Dorian am 8 Mär. 2024
Bearbeitet: Dorian am 8 Mär. 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 am 15 Mär. 2024
@Dorian, the first argument needs to be a figure handle.
function JourButtonPushed(app, event)
exportapp(app.UIFigure,'file.png');
end

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Develop Apps Using App Designer finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by