Lable with a duration
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
TheDice
am 4 Mai 2021
Kommentiert: Steven Lord
am 4 Mai 2021
Hi, I have a duration here that I would like to display as a running down number in a label or message box. But I don't know how to convert a duration.
C = DateTimeNow - DateTimeStart;
Many greetings
Fabian
3 Kommentare
William Rose
am 4 Mai 2021
@TheDice Fabian,
DateString=datestr(C,'HH:MM:S')
gives a string with the hours, minutes, seconds of c.
Akzeptierte Antwort
Scott MacKenzie
am 4 Mai 2021
You don't "convert" a duration. You control the format via the 'format' property. Try...
t1 = datetime;
pause(1);
t2 = datetime;
z = t2 - t1;
s1 = sprintf('%s', duration(z, 'format', 's'));
s2 = sprintf('%s', duration(z, 'format', 'hh:mm:ss'));
fprintf('Ex1: %s\n', s1);
fprintf('Ex2: %s\n', s2);
Output:
Ex1: 1.009 sec
Ex2: 00:00:01
Of course, there are other possibilities. Try doc duration for all the details.
1 Kommentar
Steven Lord
am 4 Mai 2021
sprintf is one way to create a char vector or a string from a duration. string is another way to create a string from a duration.
timeSinceMidnight = datetime('now')-datetime('today')
S = string(timeSinceMidnight)
The new formattedDisplayText function introduced in release R2021a is another, though you may have to trim it of leading and trailing whitespace.
T = formattedDisplayText(timeSinceMidnight)
Weitere Antworten (0)
Siehe auch
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!