FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Tree com checkbox
Posts: 148
Joined: Tue Mar 20, 2007 03:13 PM
Tree com checkbox
Posted: Fri Mar 24, 2017 10:59 AM

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

Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: Tree com checkbox
Posted: Fri Mar 24, 2017 09:46 PM
algo asi??




..fw\samples\testtre5.prg

Code (fw): Select all Collapse
// 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
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 148
Joined: Tue Mar 20, 2007 03:13 PM
Re: Tree com checkbox
Posted: Fri Mar 24, 2017 10:53 PM

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

Continue the discussion