xbrtree sample
Posted: Sun Feb 07, 2010 3:02 pm
seeing the xbrtree sample I want make an modify
On my tree there are 2 level

THIS IS THE TEST MODIFIED

How I can make to insert different bitmaps for the four component ( LABORATORY,computer,Notebook,Printers) ?
i WISH ASSIGN TO LABORATORY TREE_HARD.BMP WHEN IS CLOSED TREE_AULE.BMP WHEN IT IS OPENED
TO COMPUTER TREE_HARD.BMP
TO NOTEBOOK TREE_LAPTOP.BMP
TO PRINTERS TREE_PRINT.BMP
i MADE THE FUNCTION
static function Hard_bmp(ctipo)
Local cValoreBmp
//"TREE_HARD","TREE_LAPTOP","TREE_PRINTER"
DO CASE
CASE alltrim(ctipo)=="COMPUTER"
cValoreBmp:= "TREE_HARD"
CASE alltrim(ctipo)=="NOTEBOOK"
cValoreBmp:= "TREE_LAPTOP"
CASE alltrim(ctipo)=="PRINTERS"
cValoreBmp:= "TREE_PRINT"
ENDCASE
ctipo :=""
RETURN cValoreBmp

AND i INSERT IT ON oBrw:SetTree( BuildTree(), {"TREE_LAB", "TREE_AULE", Hard_bmp(Field->TYPE) } )
I SEE TREE_AULE AND TREE_LAB BITMAPS WHEN THE TREE IS OPENED AND CLOSED AND THIS IS RIGHT
BUT THEN I SEE THE TREE_HARD.BMP FOR THE HARDWARE PRINTERS AND LAPTOP
HOW i CAN TO SHOW THE OTHER BMPS ?
HERE THE RC FILE
TREE_AULE BITMAP "AULE.BMP"
TREE_LAB BITMAP "LAB.BMP"
TREE_PRINT BITMAP "PRINT.BMP"
TREE_HARD BITMAP "HARD.BMP"
On my tree there are 2 level

THIS IS THE TEST MODIFIED
Code: Select all | Expand
#include "FiveWin.ch"
#include "xbrowse.ch"
function Main()
local oWnd, oBrw
USE HARDWARE
INDEX ON Field->LABORATORY TO LABS
SET ORDER TO "LABS"
GO TOP
DEFINE WINDOW oWnd TITLE "DBF shown as a tree with XBrowse"
@ 0, 0 XBROWSE oBrw OF oWnd LINES CELL
oBrw:SetTree( BuildTree(), {"TREE_LAB", "TREE_AULE", Hard_bmp(Field->TYPE) } )
ADD TO oBrw DATA oBrw:oTreeItem:Cargo[ 1 ] HEADER "MARCA"
ADD TO oBrw DATA oBrw:oTreeItem:Cargo[ 2 ] HEADER "MODELLO"
oBrw:nMarqueeStyle = MARQSTYLE_HIGHLROW
oBrw:CreateFromCode()
oBrw:aCols[ 1 ]:cHeader = "Laboratory & Hardware"
oWnd:oClient = oBrw
ACTIVATE WINDOW oWnd
return nil
static function BuildTree()
local oTree, cState
TREE oTree
while ! Eof()
if Empty( cState )
_TreeItem( HARDWARE->LABORATORY ):Cargo := { Space( 20 ), Space( 20 ) }
TREE
cState = HARDWARE->LABORATORY
else
if cState != HARDWARE->LABORATORY
ENDTREE
cState = HARDWARE->LABORATORY
_TreeItem( HARDWARE->LABORATORY ):Cargo := { Space( 20 ), Space( 20 ) }
TREE
endif
endif
if HARDWARE->LABORATORY == cState
_TreeItem( HARDWARE->Type ):Cargo := { HARDWARE->marca, HARDWARE->modello }
endif
SKIP
enddo
ENDTREE
ENDTREE
GO TOP
return oTree
static function Hard_bmp(ctipo)
Local cValoreBmp
//"TREE_HARD","TREE_LAPTOP","TREE_PRINTER"
DO CASE
CASE alltrim(ctipo)=="COMPUTER"
cValoreBmp:= "TREE_HARD"
CASE alltrim(ctipo)=="NOTEBOOK"
cValoreBmp:= "TREE_LAPTOP"
CASE alltrim(ctipo)=="PRINTERS"
cValoreBmp:= "TREE_PRINTER"
ENDCASE
ctipo :=""
RETURN cValoreBmP

How I can make to insert different bitmaps for the four component ( LABORATORY,computer,Notebook,Printers) ?
i WISH ASSIGN TO LABORATORY TREE_HARD.BMP WHEN IS CLOSED TREE_AULE.BMP WHEN IT IS OPENED
TO COMPUTER TREE_HARD.BMP
TO NOTEBOOK TREE_LAPTOP.BMP
TO PRINTERS TREE_PRINT.BMP
i MADE THE FUNCTION
static function Hard_bmp(ctipo)
Local cValoreBmp
//"TREE_HARD","TREE_LAPTOP","TREE_PRINTER"
DO CASE
CASE alltrim(ctipo)=="COMPUTER"
cValoreBmp:= "TREE_HARD"
CASE alltrim(ctipo)=="NOTEBOOK"
cValoreBmp:= "TREE_LAPTOP"
CASE alltrim(ctipo)=="PRINTERS"
cValoreBmp:= "TREE_PRINT"
ENDCASE
ctipo :=""
RETURN cValoreBmp

AND i INSERT IT ON oBrw:SetTree( BuildTree(), {"TREE_LAB", "TREE_AULE", Hard_bmp(Field->TYPE) } )
I SEE TREE_AULE AND TREE_LAB BITMAPS WHEN THE TREE IS OPENED AND CLOSED AND THIS IS RIGHT
BUT THEN I SEE THE TREE_HARD.BMP FOR THE HARDWARE PRINTERS AND LAPTOP
HOW i CAN TO SHOW THE OTHER BMPS ?
HERE THE RC FILE
TREE_AULE BITMAP "AULE.BMP"
TREE_LAB BITMAP "LAB.BMP"
TREE_PRINT BITMAP "PRINT.BMP"
TREE_HARD BITMAP "HARD.BMP"