Gustav Brock
Gustav at cactus.dk
Tue Dec 7 08:57:41 CST 2004
Hi Andy At the OnOpen event, you could try this: =SetCaption(Forms([Forms].[Count]-1);"SomeCaption") /gustav From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Andy Lacey Sent: Tuesday, December 07, 2004 5:59 AM To: Dba Subject: [AccessD] Set form's Caption without code Ok, here's the thing. I want to make a few forms lightweight which currently have just a line or two in modules. A few have nothing more than a line which dynamically sets the form's caption. So I wrote a little function like this: Function SetCaption(frm As Form, strCaption As String) frm.Caption = strCaption End Function and then changed my form's OnOpen from being an Event Procedure to : =SetCaption([Screen].[ActiveForm],"x") (The "x" is just for testing. The real call would have something a bit more dynamic, like the result of a function call.) The thing is that it errors because it can't resolve [Screen].[ActiveForm] at that point. Ok, methinks, I'll move the call. But I can't find where to put it. All of the following fail: On Load On GotFocus of the first control On Current The only success I've had is putting a timer interval of 5 and putting the call in OnTimer, but I don't like that much as you can imagine. If I force a call to it once the form's up then there's no problem (eg a command button), but that's not a lot of use to me either. So I know the function is fine, but has anyone got an answer as to where I might get this to run from? -- Andy Lacey http://www.minstersystems.co.uk