Page 1 of 1

Tree com checkbox

Posted: Fri Mar 24, 2017 10:59 am
by oliveiros junior
Bom dia a todos,

Necessito de ajuda para saber se é possível criar um tree com checkbox e inabilitar click sobre ele. Explico melhor, com o tree com checkbox montado, criei uma função que utiliza o OnClick para chamá-la ( exemplo do testtre5.prg ), porém utilizo a seleção do texto para fazer críticas. Assim pergunto: É possível inibir o click sobre o checkbox, mesmo mantendo ele visível?

Obrigado!

Oliveiros Junior

Re: Tree com checkbox

Posted: Fri Mar 24, 2017 9:46 pm
by armando.lagunas
algo asi??

Image


..fw\samples\testtre5.prg

Code: Select all

// Using a TreeView with checkboxes and checking their status

#include "FiveWin.ch"

function Main()

   local oDlg, oTree

   DEFINE DIALOG oDlg

      oTree = TTreeView():New( 0, 0, oDlg,,,,,200,200,,.t.)

      oTree:OnClick = { || CheckStatus( oTree, oTree:aItems ) }

   ACTIVATE DIALOG oDlg CENTERED ON INIT BuildTree( oTree )

return nil 

function BuildTree( oTree ) 

   local oMenu := Array( 2 ), oSubMenu := Array( 3 ) 

   oMenu[ 1 ]:= oTree:Add( "Principal" ) 
      oSubMenu[ 1 ]:= oMenu[ 1 ]:Add( "Imprimir..." )
      oSubMenu[ 1 ]:SetCheck( .T. ) 

   oMenu[ 2 ]:= oTree:Add( "Proyectos" ) 
      oSubMenu[ 2 ]:= oMenu[ 2 ]:Add( "Definir Proyectos" ) 
      oSubmenu[ 3 ]:= oMenu[ 2 ]:Add( "Actualización datos" ) 

   oTree:Expand() 

return nil 

function CheckStatus( oTree, aItems )

   local n
   
   for n = 1 to Len( aItems )
      MsgInfo( oTree:GetCheck( aItems[ n ] ) )
      CheckStatus( oTree, aItems[ n ]:aItems )
   next
   
return nil    
 

Re: Tree com checkbox

Posted: Fri Mar 24, 2017 10:53 pm
by oliveiros junior
Olá Armando,

Obrigado pela resposta. Era quase isso. Depois da tree montada, gostaria de inibir o clique sobre o Checkbox. A marcação do checkbox seria realizada por função, com a opção oTree:SetCheck( oTree:aItems[ nItem ], .T. ).

Att.,

Oliveiros Junior