Hello all,
I have a app that launches a top level form with all of the navigation on it.
_vfp.visible = .F.
I have a timer class that is added to my global oApp object. This timer looks at multiple oApp properties that are changed (if need be) by another process com server exe that does some cpu intensive queries to look for sitatutions the currently logged in user needs to be made aware of.
cMsg2Show = "You have the following messages in your que: " + cr2
iAnyMessages = 0
*-- Phone Messages
iNoMsgs = oApp.oMsg.iPhoneMessagesInQue
If iNoMsgs > 0
cMsg2Show = cMsg2Show + Transform(iNoMsgs) + " Phone Messages" + cr
Endif
iAnyMessages = iAnyMessages + iNoMsgs
*-- Work Orders
iNoMsgs = oApp.oMsg.iWorkOrdersInQue
If iNoMsgs > 0
cMsg2Show = cMsg2Show + Transform(iNoMsgs) + " Work-Orders" + cr
Endif
iAnyMessages = iAnyMessages + iNoMsgs
If oApp.bRunningXP And iAnyMessages > 0
oApp.oTssTray.Modify( cMsg2Show , "Message Que " + Transform(Datetime()) , "MIS Message Que" , LoadPicture("tssTrayIcon.ICO") , '2' , 60*1000*5 )
Endif
This fires an active-x control which pops up the xp balloon displaying a message for the user to either ignore or to click there by showing a form that they can decide what actions to take.
My problem is that when I try to execute the do form alertMe from the event handler for the balloon the modal form runs and acts like a normal form. This form has a listbox that reiterates the choices displayed in the balloon and there is a button on the form to allow the user to higlight the item they want to take care and when they click the button it launches the proper modal form BUT the form's title bar is inactive and the form will not accept keystrokes but will allow mouse clicks ?
If this same alert form is called from a button on the main form this inactive title bar is not an issue.
is there something about event handler code that would cause this behavior ?
Define Class myclass As Custom OlePublic
Implements __CTrayNotify In "tssTrayNotify.CTrayNotify"
Procedure __CTrayNotify_Click() As VOID
Do Form alertMe
Endproc
Procedure __CTrayNotify_DoubleClick() As VOID
* add user code here
Endproc
Procedure __CTrayNotify_RightClick() As VOID
* add user code here
Endproc
Procedure __CTrayNotify_RightDoubleClick() As VOID
* add user code here
Endproc
Procedure __CTrayNotify_MouseMove() As VOID
* add user code here
Endproc
Procedure __CTrayNotify_HideBalloon() As VOID
If Vartype(oApp)='O' And Not Isnull(oApp)
If Vartype(oApp.oMainFormReference)='O' ;
And Not Isnull(oApp.oMainFormReference)
* oApp.oMainFormReference.cmdMessagesInQue.Enabled = .T.
forcewindow2top( oApp.oMainFormReference.hwnd , .T. )
Do Form alertMe
Endif
Endif
Endproc
Enddefine
TIA !
Greg Foote
Software At Work, Inc.