La parte derecha de un SPLITTER vertical

Post Reply
User avatar
JmGarcia
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

La parte derecha de un SPLITTER vertical

Post by JmGarcia »

Quisiera poner en una ventana (MDICHILD) un splitter y a la izquierda un arbol (tree) y a la derecha un browse.
La parte del tree ya es mas o menos dominada, pero en el hueco de la derecha quisiera poner un browse (listbox).

Tengo este codigo:

Code: Select all

DEFINE WINDOW owVerTree TITLE "Prueba"  MDICHILD OF owPrincipal
HacerArbol(@oTree,@oItem)
@ 29, 200 SPLITTER oSplit VERTICAL _3DLOOK PREVIOUS CONTROLS oTree SIZE 4, 200 PIXEL OF owVerTree

/******************************************
ESTE ES EL BROWSE, ¿ Como lo pongo a la derecha ?
@ 0,0 LISTBOX obFichero FIELDS NOMBRE,APELLIDOS OF  ¿ owVerTree ? SIZE 600,400
******************************************/

ACTIVATE WINDOW owVerTree ON RESIZE oSplit:AdjClient()
Gracias.
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.
FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
Francisco Horta
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Post by Francisco Horta »

Jim,
en el splitter usa HINDS CONTROLS oMiObjeto
esta se usa para los controles a la derecha del splitter o por abajo
salu2
paco
User avatar
JmGarcia
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

Post by JmGarcia »

Francisco Horta wrote:en el splitter usa HINDS CONTROLS oMiObjeto
esta se usa para los controles a la derecha del splitter o por abajo
Entonces pogo esto:

@ 29, 200 SPLITTER oSplit VERTICAL _3DLOOK PREVIOUS CONTROLS oTree HINDS CONTROLS obFichero SIZE 4, 200 PIXEL OF owVerTree

¿ Es correcto ?
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.
FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
User avatar
JmGarcia
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

Post by JmGarcia »

Me tapa toda la ventana.
Pues no consigo poner un ListBox (browse) en la parte derecha... y que ocupe tada esa parte, claro.
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.
FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
User avatar
RenOmaS
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Post by RenOmaS »

Code: Select all

owVerTree:oClient( oSplit )

ACTIVATE WINDOW owVerTree ON RESIZE ::oClient:AdjClient()
Saludos :twisted:
User avatar
JmGarcia
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

Post by JmGarcia »

RenOmaS wrote:

Code: Select all

owVerTree:oClient( oSplit )
ACTIVATE WINDOW owVerTree ON RESIZE ::oClient:AdjClient()
No lo entiendo.
Pero ¿ Como pongo el objeto "obFichero" de mi codigo (primer mensaje) en la parte derecha de la ventana owVerTree ?
Es decir: a la izquierda el TREE y a la derecha el BROWSE(ListBox)
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.
FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
User avatar
RenOmaS
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Post by RenOmaS »

Lo pones igual..
El que va a controlar la posicion es el Spliter

Mira este trozo de programa y obser la construccion del objeto splitter

Code: Select all



CLASS MDITree FROM TMdiChild

   CLASSDATA oApp

   DATA oDbf, oDbfSlave
   DATA oTree, oBrw
   DATA nPosition
.......
   METHOD New() CONSTRUCTOR
   METHOD Activate()
.......
ENDCLASS

METHOD New( oApp, nId, nTop, nLeft, nBottom, nRight, oDbf, oDbfSlave ) CLASS MDITree

......

   Super:New( ::nTop, ::nLeft, ::nBottom, ::nRight, , Nil, Nil, oApp:oWnd, ;
                oApp:oWnd:oIcon, .F., ::nClrText, ::nClrPane, Nil, Nil, .T., .F., Nil, Nil, .T., ;
                .T., .T., .T. )

   ::oTree := TTreeView():New( 0, 0, Self, ::nClrtext, ::nClrPane, , , ::nPosition - 1 )
   ::oTree:SetFont( ::oFont )

   If oDbfSlave != Nil
      ::oDbfSlave := oDbfSlave
      ::lSplitter := .T.
      ::oBrw := tsBrowse():New( 0, ::nPosition + 4, Nil, Nil, Nil, Nil, , Self, Nil, Nil, Nil, ;
                                Nil, Nil, Nil, ::oFont, Nil, { ::nClrText }, Nil, .T., ;
                                oDbfSlave:cAlias, .T., Nil, Nil, Nil, Nil )
      ::oBrw:SetoDbf( oDbfSlave )

      ::oBrw:bLDblClick:= { || ::Edition() }


      ::oClient := TSplitter():New( 0, ::nPosition, .T., { ::oTree }, .T., { ::oBrw }, .T., ;
                                   Nil, Nil, Self, Nil, , , .T., .T., Nil, .F., .F. )

      ::oTree:bChanged := { |o,i| i := o:GetSelected(), ;
                                  If( !Empty( i:Cargo ) .and. ::oDbf:nArea > 0, ;
                                      ( ::oDbfSlave:SetScope( i:Cargo ), ;
                                        ::oBrw:Reset() ), ) }
   EndIf

.......
 
   Return Self

METHOD Activate( bEnd ) CLASS MDITree
   ::bEnd       := bEnd

   If ::lDefault
      ::ToolBar()
   Endif

   ::MakeTree()


   Super:Activate( , , , , ;
                   { || If( ::lSplitter, ::oClient:adjClient(), ) } )

   ::oTree:SetFocus()

   Return Self
Post Reply