Software Archive
Read-only legacy content

dlgset

Ray_R_1
Beginner
472 Views
I'm trying to disable an edit box using dlgset. My program uses several levels of subroutines and some are recursive. If I call dlgset near the top level every thing is fine, it turns the edit box on and off. If I call it near the bottom level it does nothing, the return value is .true. and if I use dlgset to write to the edit box at this same level that works fine. Any ideas?? is this some type of stack problem.

Thanks Ray
0 Kudos
3 Replies
Intel_C_Intel
Employee
472 Views
Hi Ray,

I don't know what the problem is, but try calling DlgFlush after disabling the edit box. Normally, DlgSet changes are not individually sent to the "real" dialog box, but wait until the end of your callback procedure. DlgFlush will apply the changes immediately.

Regards,
Leo
0 Kudos
Ray_R_1
Beginner
472 Views
Leo thanks for the reply, I tried DlgFlush but it didn't help. I tried calling Dlgset to disenable the edit box, DlgFlush (I tried both Fushall set to true then to false) then called DlgGet to check the enable state and it comes back true all the time. The return values of DlgSet and DlgGet are true and I can change the actual text displayed in the edit box. It would seem that for some reason I can't disenable the edit or combo boxes, but can disenable radio and check boxes. I don't have I lot of time to dump into solving this, so I will just let it go for now. By the way the compiler I'm using is V6.6. I tried to upgrade to V6.6A but I got the following run time error "Debug Assertion Failed ....File dbgheap.c ..... _CrtsValidHeapPointer(pUserData) ..." Version 6.6 and earlier doesn't give this error. Do you think I may have another problem hiding somewhere? or could this be a compiler/ run time library problem???
0 Kudos
Jugoslav_Dujic
Valued Contributor II
472 Views
Probably you're screwing your Dlg variable somehow. Reuse of same Dlg variable for two dialog boxes at a same time or failure to call DlgUnInit and reuse static Dlg from earlier call may lead to a various number of nasty behaviours. You can try to insert Dflogm.f90 (...DFInclude or ...Samples) directly to your project and debug it along.

Jugoslav
0 Kudos
Reply