Uidatepicker in app designer

Is there any way to place a uidatepicker element inside an existing app designer panel? The samples I've seen only show how to do that creating a new figure...

7 Comments

Hi Ricardo, I am new to appdesigner, but i like it very much. I didnt get whether you managed to see datepicker component in the component list (left pane). If not, how was your problem solved?
Hello Omer,
I've done that Chris said, using Position(1:2) to turn my uidatepicker visible in the Panel. To do that, I've been changing the position values until this gets in the right place:
app.dataIni = uidatepicker(app.Panel, 'DisplayFormat', 'yyyy-mm-dd', 'Value', datetime('today')); app.dataIni.Position(1:2) = [20 5];
Ricardo, thanks for the reply. Where do I put these 2 lines in my appdesigner codes?
OK managed to have the datepicker component in my panel. But it only appears when the button was clicked. I need it to be appeared all the time there, can we do that?
OK that one is sorted too :)
Great :)
Hello Eker,
Can you share what you did for placeing a uidatepicker element inside an existing app designer panel?

Sign in to comment.

Answers (5)

Chris Portal
Chris Portal on 21 Apr 2018
Edited: per isakson on 21 Apr 2018

You can pass the panel’s handle as the parent for the uidatepicker. The syntax is described here:

https://www.mathworks.com/help/matlab/ref/uidatepicker.html

Ricardo Pedó
Ricardo Pedó on 21 Apr 2018
Edited: per isakson on 21 Apr 2018

Thank you Chris. I've already read that link, but I couldn't undestand how to use panel as an object. May you show me an example? In my code I have app.Panel inside a TabGroup. I tried something like the example below, but it didn't work:

uidatepicker(app.Panel,'DisplayFormat','dd-MM-yyyy');

1 Comment

Hmm, that’s what you need to do. What is the error you’re getting?

Sign in to comment.

Ricardo Pedó
Ricardo Pedó on 21 Apr 2018
Doing that way I don't get error message, but datapicker element don't show up in the panel...

1 Comment

If you instead parent a button to the panel at the same line of code, does the button show up?

Sign in to comment.

Ricardo Pedó
Ricardo Pedó on 21 Apr 2018
No, now I got this error: Error using uidatepicker (line 44) Button cannot be a parent.

1 Comment

Sorry, I meant comment out your date picker line of code, and add this line of code:

b = uibutton(app.Panel);

Does the button show up in the panel? This will determine whether the issue is with date picker specifically or something else.

Sign in to comment.

Ricardo Pedó
Ricardo Pedó on 21 Apr 2018
Ahh now I got your idea. Yes, the button shows up. Seems to be something related to the date picker...

2 Comments

Thanks. It looks to be a positioning bug specific to date picker. You can work around it by doing the following:

p = uidatepicker(app.Panel, ‘DisplayFormat’, ‘dd-MM-yyyy’);
p.Position(1:2) = [0 0];

I’ll report the bug for you. Thank you!

Yeah, that's the bug! It worked... Thank you Chris!!

Sign in to comment.

Categories

Find more on App Building in Help Center and File Exchange

Asked:

on 20 Apr 2018

Commented:

on 3 Dec 2019

Community Treasure Hunt

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

Start Hunting!