DOCUMENT:Q136578 15-FEB-2000 [foxpro] TITLE :Code Samples Demonstrate How to Use the Outline Control PRODUCT :Microsoft FoxPro PROD/VER:WINDOWS:3.0 OPER/SYS: KEYWORDS: ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual FoxPro for Windows, version 3.0 ------------------------------------------------------------------------------- SUMMARY ======= This article provides code that demonstrates how to use the Outline control. MORE INFORMATION ================ Code Sample One --------------- In this example, the user selects a database (.dbc file). Then all of its tables, fields, and indexes are listed hierarchically in the outline control. **** BEGINNING *** *: TEST PUBLIC frm1 frm1=CREA('Myform') frm1.SHOW FOR i=1 TO frm1.CONTROLCOUNT frm1.CONTROLS(i).VISIBLE=.T. ENDFOR *:************************************************************************* *: *: Class:myform BaseClass: FORM *: *:************************************************************************* DEFINE CLASS myform AS FORM SCALEMODE=3 WIDTH=600 HEIGHT=600 ADD OBJECT CtnOle AS cont1 ADD OBJECT cmd1 AS cmdbtn PROCEDURE INIT THISFORM.CtnOle.ole1.ADDITEM('test') THISFORM. CtnOle.ole1.ADDITEM('test1') THISFORM. CtnOle.ole1.indent(0)=1 THISFORM. CtnOle.ole1.indent(1)=2 ENDPROC ENDDEFINE *:************************************************************************ *: *: Class:Cont1 BaseClass: CONTAINER *: *:************************************************************************* DEFINE CLASS Cont1 AS CONTAINER WIDTH=400 TOP=50 LEFT=50 HEIGHT=400 ADD OBJECT ole1 AS OleCtrl ENDDEFINE *:************************************************************************* *: *: Class:OleCtrl BaseClass: OLECONTROL *: *:************************************************************************* DEFINE CLASS OleCtrl AS OLECONTROL OLECLASS='MSoutl.outline' TOP=60 LEFT=60 WIDTH=280 HEIGHT=250 VISIBLE=.T. ENDDEFINE *:************************************************************************* *: *: Class:cmdbtn BaseClass: COMMANDBUTTON *: *:************************************************************************* DEFINE CLASS cmdbtn AS COMMANDBUTTON TOP=80 LEFT=460 HEIGHT=30 WIDTH=100 VISIBLE=.T. CAPTION="Move" PROCEDURE CLICK THISFORM.CtnOle.ole1.MOVE(120,120,200) ENDPROC ENDDEFINE **** END OF EXAMPLE 1 *** Code Sample Two --------------- This example shows how to use the :: operator to call the Outline control's Init event. **** BEGINNING *** PUBLIC oForm oForm=CREATE('form') oForm.ADDOBJECT('oRedOutl','out1') oForm.oRedOutl.VISIBLE=.T. oForm.oRedOutl.CLICK oForm.SHOW *:************************************************************************* *: *: Class:out BaseClass: OLECONTROL *: *:************************************************************************* DEFINE CLASS out AS OLECONTROL TOP = 24 LEFT = 24 HEIGHT = 193 WIDTH = 289 OLECLASS='msoutl.outline' PROCEDURE INIT THIS.ADDITEM('test') THIS.ADDITEM('test') THIS.ADDITEM('test') THIS.ADDITEM('test') THIS.ADDITEM('test') THIS.ADDITEM('test') THIS.indent(0)=1 THIS.indent(1)=2 THIS.indent(2)=2 THIS.indent(3)=2 THIS.indent(4)=2 THIS.indent(5)=2 ENDPROC ENDDEFINE *:************************************************************************* *: *: Class:out1 BaseClass: out *: *:************************************************************************* DEFINE CLASS out1 AS out PROCEDURE INIT out::INIT THIS.OBJECT.BACKCOLOR = RGB(255,0,0) ENDPROC PROCEDURE CLICK WAIT WINDOW ENDPROC ENDDEFINE **** END OF EXAMPLE 2 *** For an example of a form (.scx file) that uses the Outline control, please see the Outline1.scx sample form located in the Vfp\Samples\Ole directory. Additional query words: VFoxWin ====================================================================== Keywords : Technology : kbVFPsearch kbAudDeveloper kbVFP300 Version : WINDOWS:3.0 ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2000.