Highlighted
Absent Member.
Absent Member.
385 views

[archive] Minimise floating window

[Migrated content. Thread originally posted on 23 September 2009]

Hi,

I have a program that calls another using the CALL verb. I pass external variables between the 2 programs and therefore cannot use C$RUN. My called program uses a floating window. I would like to minimise this window so the user can enquire on the main window and then return to the floating window. Is there any way to achieve this ? I have tried using MODELESS but the floating window cannot be minimised.

Any assistance will be greatly appreciated.

Medasha
0 Likes
6 Replies
Highlighted
Absent Member.
Absent Member.

RE: [archive] Minimise floating window

I have a similar issue. I am trying to use threads. The called program can be minimized, but when I return to the main program it does not respond.

Main program:CALL THREAD program-name handle ws-thread

Called Program:

display independent window link to thread modeless auto-minimize

Any help appreciated!
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Minimise floating window

Is the window of your menu program bound/linked to its own thread?
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Minimise floating window

Hi,

I've tried using threads as well, but the programs are not responding. Any help will be appreciated.

Thanks.
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Minimise floating window

FLOATING windows are children and cannot be minimized separately from the parent. This is regardless of whether or not it is displayed from a called program in a separate thread.

So you should use an INDEPENDENT window as it is a sibling of the original window rather than a child. I'm not sure why Mike's program isn't working as expected.

I've attached a zip file containing two programs demonstrating one way to achieve what you are describing. Compile testA.cbl and testB.cbl, then launch testA.
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Minimise floating window

FLOATING windows are children and cannot be minimized separately from the parent. This is regardless of whether or not it is displayed from a called program in a separate thread.

So you should use an INDEPENDENT window as it is a sibling of the original window rather than a child. I'm not sure why Mike's program isn't working as expected.

I've attached a zip file containing two programs demonstrating one way to achieve what you are describing. Compile testA.cbl and testB.cbl, then launch testA.


I hate to hijack the thread, but could you explain the various window types and when/why you would or wouldn't use them?

Initial
Standard
Independent - This one I think you have explained well enough above.
Floating - this one is also pretty easy and explained above.

Thanks
0 Likes
Highlighted
Absent Member.
Absent Member.

RE: [archive] Minimise floating window

This is probably a good place to review the window information.

INITIAL creates the main application window. There can be only one per application and it is always modeless. If it is minimized all other windows in the application are minimized too. If it is closed the application terminates.

STANDARD is identical to INITIAL but automatically implies the following properties:
TITLE-BAR
SYSTEM MENU
AUTO-MINIMIZE
USER-COLORS

The full details on INITIAL windows can be found in the "DISPLAY INITIAL WINDOW" entry in Section 6.6 of the ACUCOBOL-GT Reference Manual.
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.