Software Archive
Read-only legacy content

Tab Control

longwell
Beginner
935 Views
I am using a tab control in a dialog. I start the dialog using the dlg_modal function and each of the tab dialogs with the dlg_modeless function from within a call back routine. Everything works fine except for one minor problem. I cannot use the tab key to navigate within the "tab" dialogs that are associated with the tab control.

To get the tabs working in the "tab" dialogs, I select the "Parent Control" option of the main dialog and the "Control" option of the "tab" dialogs. Now the tabs work within the "tab" dialogs, but the program hangs up when other button contols (that did work before) are used.

If anyone has any ideas, please let me know. Thanks.
0 Kudos
5 Replies
Jugoslav_Dujic
Valued Contributor II
935 Views
Tabbed dialogs are tricky in general. Try adding "Tab stop" style to the tab control itself. I recall it helped me once but I don't know why it worked.

By default, you can use only the following setup with DFLOGM:
 
Modal dialog 
  |---Tab control 
       |--- Modeless dialog 1 
       |--- Modeless dialog 2

But a far better setup, which doesn't cause the problems with Tab key interaction is:
 
Modal dialog 
  |---Tab control 
  |--- Modeless dialog 1 
  |--- Modeless dialog 2

I've modified and tested my "spiced" version of DFLOGM to allow for such setup and I'll upload it to my home page during the day. See last release notes there (You should change only DlgModeless calls). It's based on an outdated DFLOGM; you can also "roll your own" and apply my changes to ChangeTabItems and DlgGetTabChild in your DFLOGM.f90.

Jugoslav
0 Kudos
Jugoslav_Dujic
Valued Contributor II
935 Views
It's uploaded now. This is the real link.
0 Kudos
longwell
Beginner
935 Views
Jugoslav, your solution worked like a charm. Now, the tab key functions within the "tab dialogs" and the program does not hang up any more. Thanks.

I am now getting a warning message however as follows:
Linking...
LINK : warning LNK4089: all references to "OLEAUT32.dll" discarded by /OPT:REF

SpringWUIP.exe - 0 error(s), 1 warning(s)

Is this any thing to be concerned about?

Also, now all of the fortran files that "use xflogm" compile each time even if they are not changed. What is causing this?

Thanks for the help.
Joe
0 Kudos
Steven_L_Intel1
Employee
935 Views
You can ignore that warning. It simply means that one of the DLL libraries you linked to isn't being used.

Steve
0 Kudos
Jugoslav_Dujic
Valued Contributor II
935 Views
Also, now all of the fortran files that "use xflogm" compile each time even if they are not changed. What is causing this?

First try Build/Update all dependencies. If that doesn't help, check filetimes of .f90s and .objs. Wrong (older than present) system time on your computer may cause dependency analyser to go crazy. Obviously, filetimes of .f90s must be older than filetime of .objs and .mods. (You can change timestamp of a file by doing an Open and Save As by the same name).
0 Kudos
Reply