Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

This forum is for eXpress++ general support.
Message
Author
ampandya
Posts: 58
Joined: Tue Apr 19, 2016 4:48 am

Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#1 Post by ampandya »

Hi
Can someone please help?

I am using autoresize in getoptions and o:setFrameState(XBPDLG_FRAMESTAT_MAXIMIZED) to maximize the screen which has buttons and browse.

It works but at first it shows the normal size ex. 1024 * 768, and when resized to 1092*1080 it blinks and then resize all the buttons and browse which doest look nice.

sorry forgot to mention, if the screen size is 1024 x 768, and when maximized is used with autoresize, it still blinks up and down and then set up correctly.


Thanks
Ankit
Last edited by ampandya on Tue Aug 23, 2016 6:32 am, edited 1 time in total.

User avatar
rdonnay
Site Admin
Posts: 4813
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#2 Post by rdonnay »

Which version of eXpress++ are you using?

There was a bug in the resize when minimized in an older version.
I'm not familiar with any problems with maximized.

Can you provide a sample program that demonstrates the problem?
The eXpress train is coming - and it has more cars.

ampandya
Posts: 58
Joined: Tue Apr 19, 2016 4:48 am

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#3 Post by ampandya »

Roger
I am using the latest exp20.

please see the code below for dcgetoptions and dcread

DCGETOPTIONS NOWINDOWMENU autoresize;
NOMAXBUTTON ;
NOMINBUTTON ;
WINDOWHEIGHT win_height ;
WINDOWWIDTH win_width;
NOSUPERVISE NOESCAPEKEY;
NOTITLEBAR color tillbgcolour //{225,225,225} NOSUPERVISE NOESCAPEKEYS


DCREAD gui PARENT @ODLG CLEAREVENTS ;
MODAL options getoptions EVAL {|o|o:setFrameState(XBPDLG_FRAMESTAT_MAXIMIZED),(setappwindow(odlg))};


I have buttons on the screen as this is a Epos till system software, and some pages have browse to display the products data.

if its not maximized it shows in the middle of the screen, but i want to cover the full screen. if i dont use autoresize it cover the screen but the buttons and other objects are in the corner when run on the bugger screen (pc). when used with autoresize in the dcgetoptions it works as we want but the problem is when it load the screen blinks 3-4 times and eventually it sets up.

Thanks

User avatar
rdonnay
Site Admin
Posts: 4813
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#4 Post by rdonnay »

I don't think that AUTORESIZE is what you should be using but I cannot tell unless I have the code that creates your screen.

You may want to use the RESIZE clause and give a resize rule to each object.

Look at the sample program \exp20\samples\resize\resize.prg.

It would help if you could post your code that creates the screen or at least a JPG snapshot of the screen (before and after maximize).
The eXpress train is coming - and it has more cars.

Wolfgang Ciriack
Posts: 484
Joined: Wed Jan 27, 2010 10:25 pm
Location: Berlin Germany

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#5 Post by Wolfgang Ciriack »

Perhaps you can try to use DCGETOPTIONS HIDE and in the EVAL codeblock add a o:show() after the o:setframestate().
_______________________
Best Regards
Wolfgang

ampandya
Posts: 58
Joined: Tue Apr 19, 2016 4:48 am

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#6 Post by ampandya »

I have tried Hide and 0:show()

That doesnt help.

thanks

ampandya
Posts: 58
Joined: Tue Apr 19, 2016 4:48 am

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#7 Post by ampandya »

Hi
I have tried the resize options but it doesnt work well with buttons, my screen have buttons as its ePOS till software.

Roger : Please see the attached images using autoresize and resize. this is just a start up page, the till screen has buttons all over the screen and browse for scanned items.



The software was designed to work with standard screen size 1024,786. it works ok with this resolutions.
but when used on the PC with high resolution (ex. 1920,1080) its very small and in the middle of the screen.

That is the reason i would like to make it cover the full screen.

Is there any other way where i can resize all the forms and objects to the cover the screen on any resolution?

Many Thanks
Ankit
Attachments
autoresize.jpg
autoresize.jpg (110.47 KiB) Viewed 18509 times
resize.jpg
resize.jpg (52.21 KiB) Viewed 18509 times

User avatar
rdonnay
Site Admin
Posts: 4813
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#8 Post by rdonnay »

I think you should use the SCALING feature of eXpress++.

Look at \exp20\samples\scale\scale.prg and \exp20\samples\scale\font.prg
The eXpress train is coming - and it has more cars.

ampandya
Posts: 58
Joined: Tue Apr 19, 2016 4:48 am

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#9 Post by ampandya »

Hi
Scale and Font program's code make a little change but not stop blinks.

Roger,
I was checking the samples and found that, you can see what i am trying to explain here.
If you open the ButtonXP program maximizsed using (setFrameState(XBPDLG_FRAMESTAT_MAXIMIZED))
It does the same Blinks to adjust button to the screen resolution, which i am talking about.

Many Thanks
Ankit

ampandya
Posts: 58
Joined: Tue Apr 19, 2016 4:48 am

Re: Autoresize with XBPDLG_FRAMESTAT_MAXIMIZED)

#10 Post by ampandya »

Hi

to work around can you please suggest,

how can i show progres using ( cDialog=dc_waiton("Please wait..Re-creating buttons") sleep(500) ) on a white background
and the original form loads all the buttons and other objects behind the white background?

Thanks
Ankit

Post Reply