Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28602 Discussions

QuickWin Question: Hiding main frame window?

cobek
Beginner
440 Views

Hi,

is there any way to hide main frame window (in QuickWin) during initialization.

As i understood, some generalinitialization can be done within INITIALSETTINGS function, but, due to lack of window handler (window is not created within that function), it is not possible to apply anyAPI function that uses window handlerfor windows manipulation (GETHWNDQQ (QWIN$FRAMEWINDOW)returns 0).

Cheers

Cobek

0 Kudos
3 Replies
cobek
Beginner
440 Views

Well, again me..as i did not receive any answer it might be that my question is not completely clear.Iwrote "to hide main frame window during initialization" but that is not completely precise definition. Thething is that the main frame window is shown at the beginig of the Quickwin program after some initializations have been done in INITIALSETTINGS function (if the user defines it).

Hence, i would appreciate if someone could tell me if it ispossible to hide that window so it does not show up atthe beginig of the Quickwin application?

Thanks

0 Kudos
david_jones
Beginner
440 Views

I am using something like the following

winfo.TYPE = QWIN$min
ires = SETWSIZEQQ(QWIN$FRAMEWINDOW, winfo)

placed as early as possible in the code.The result is possibly OK on a fast computer, but you can certainly see the window opening and minimising on a slower computer.

However I wasn't using INITIALSETTINGS at the time. I see from the help pages that different things happen with SETWSIZEQQ in that context. You might have to experiment with a zero size, or try to move the window off the screen.


0 Kudos
cobek
Beginner
440 Views

Actually, i was intereseted to hide the window...but, anyway you gave me an idea that seems to be working...instead of zero size i set zero value in the QWINFO%Type field.

Who might be interested, here can find the function:

LOGICAL(4) FUNCTION INITIALSETTINGS( )

usedflib

integer(4) ret
TYPE (qwinfo) qwi

! Set window frame size.
qwi%x = 0
qwi%y = 0
qwi%w = 774 !some pixel coordinates
qwi%h = 459
qwi%type = 0 ! instead of QWIN$SET - tricky thing in my opinion

ret = SetWSizeQQ( QWIN$FRAMEWINDOW , qwi )
INITIALSETTINGS= .true.
END FUNCTION INITIALSETTINGS

in the source filewhere the program begins(below PROGRAM) you can use something like

...

hWnd = GETHWNDQQ (QWIN$FRAMEWINDOW)
ret=ShowWindow(hWnd,SW_SHOW)
...

cheers

0 Kudos
Reply