With _Screen .AddObject("Pageframe","myPageframe") With .PageFrame .PageCount = 2 With .Pages(1) .Caption = "page1" .AddObject( "cmdExit", "cmdExit" ) .cmdExit.Visible = .T. Endwith With .Pages(2) .Caption = "page2" .AddObject( "cntTreeview", "cntTreeview" ) .cntTreeview.Anchor = 0 .cntTreeview.Height = .Parent.Height .cntTreeview.Width = .Parent.Width .cntTreeview.oleControl1.Nodes.Add( , 1, "Session", "First Option" ) .cntTreeview.oleControl1.Nodes.Add( , 1, "OptionSession", "Second Option" ) .cntTreeview.Anchor = 15 .cntTreeview.Visible = .T. Endwith Endwith .PageFrame.Visible = .T. .PageFrame.ActivePage = 2 Endwith Define Class myPage As Page Enddefine Define Class myPageframe As PageFrame MemberClassLibrary = Sys(16) MemberClass = 'myPage' Enddefine Define Class cntTreeview As Container Add Object oleControl1 As oleTreeview Procedure Resize DoDefault() With This .oleControl1.Height = .Height .oleControl1.Width = .Width .oleControl1.Visible = 1 Endwith Endproc Enddef Define Class oleTreeview As OleControl OleClass = "MSComctlLib.TreeCtrl.2" Enddefine Define Class cmdExit As CommandButton Caption = "Exit" Height = 50 Width = 50 Procedure Click _Screen.RemoveObject("Pageframe") Endproc Enddefine