Gustav Brock
gustav at cactus.dk
Wed Mar 12 13:17:00 CST 2003
Hi Drew I don't like at all coding where you rely on error generation. It may very well be quick and dirty code and some like that, but I try to use it as the last resort only. Previously I have posted this small function for the same purpose - it could have been for the benefit of Arthur "the static lover" as you'll see. It is not much larger than your code: <code> Private Function IsSubform() As Boolean Static booSubform As Boolean Static lngFormsCount As Long If lngFormsCount = 0 Then lngFormsCount = Forms.Count booSubform = StrComp(Forms(lngFormsCount - 1).Name, Me.Name, vbTextCompare) End If IsSubform = booSubform End Function </code> /gustav > I know, it's just one of my coding habits. I only use 'resume next' when I > want to completely ignore errors. If I am expecting an error...to use it > (as in my example), or I am just handling unexpected errors, then I always > use On Error Goto... > Make sense? (your code is smaller....can't deny that!<grin>) > Drew > -----Original Message----- > From: Gustav Brock [mailto:gustav at cactus.dk] > Sent: Wednesday, March 12, 2003 11:13 AM > To: Drew Wutka > Subject: Re: [AccessD] How do I tell if a form is opened as a subform or > not? > Hi Drew > That was an awful lot of code to replace something like these two > lines: > <code> > Private Function IsSubform() As Boolean > On Error Resume Next > IsSubform = Me.Parent.hWnd > End Function > </code> > /gustav >> This is from my new MiniCalendar database....still in development...but > the >> function works fine. >> Private Function AmIASubForm() As Boolean >> On Error GoTo ErrorHandler >> Dim varTemp >> varTemp = Me.Parent >> AmIASubForm = True >> Exit Function >> ErrorHandler: >> Err.Clear >> AmIASubForm = False >> End Function >> -----Original Message----- >> From: Bruce Bruen [mailto:bbruen at bigpond.com] >> Sent: Tuesday, March 11, 2003 6:58 PM >> To: AccessD >> Subject: [AccessD] How do I tell if a form is opened as a subform or >> not? >> Hi List, >> I am trying to use a form that may appear as a subform or on its own. >> If it's a subform then I want to maximise it in its parent control >> space, if not then it should be sized to fit the form. >> But how do I tell where it is being opened? The following doesn't work: >> On Error Resume Next >> If Not IsNull(Me.Parent.Name) Then >> boolIsSubform = True >> DoCmd.Maximize >> Else >> boolIsSubform = False >> End If >> On Error GoTo 0 >> Ignore the fact that the docmd works on the parent, I am not worried >> about that at the moment, only that I don't know how to test the >> "subformedness".