Página 1 de 1

Adicionar Colunas em Grid

Enviado: 09 Mai 2011 14:12
por Toledo
Amigos, não estou conseguindo colocar as colunas num GRID, segue meu código:

Código: Selecionar todos

#Include "hwgui.ch"

FUNCTION pesq_fis()

 LOCAL  vEdit1 := "" , vCombo1 := 1
 LOCAL oDlg, oGroup1, oEdit1, oCombo1, oGridex1, aItems :={}, aCli :={}

 go Top
 while !eof()
  aadd(aItems,{COD,NOME,CPF})
  skip
 enddo

 INIT DIALOG oDlg CLIPPER NOEXIT NOEXITESC TITLE "Consultar Clientes" ;
   AT 0,134 SIZE 552,358 ;
   STYLE WS_POPUP+WS_CAPTION+WS_SYSMENU+WS_SIZEBOX+DS_CENTER 

   @ 13,13 GET oEdit1 VAR vEdit1 SIZE 369,22     ;
        VALID  {|| Pega_Cli() } ;
        ON CHANGE {|| Pesq_Cli() }
   @ 394,13 GET COMBOBOX oCombo1 VAR vCombo1 ;
        ITEMS {"Nome do Cliente","Número CPF"}  ;
        SIZE 143,24    ;
        ON CHANGE {|| Setar_Ord() }
   @ 12,50 GRIDEX oGridex1 OF oDlg SIZE 525,292 ;
           ITEMS aItems ;
           ON KEYDOWN {|oCtrl, key| OnKey_Cli(oCtrl, key) } ;
           ON CLICK {|oCtrl| OnClick_Cli(oCtrl) } ;
           STYLE WS_VSCROLL + WS_HSCROLL

           oGridex1:AddColumn( "Codigo", 70, , )
           oGridex1:AddColumn( "Nome", 160, , )
           oGridex1:AddColumn( "CPF", 120, , )

           for n:=1 to len(aItems)
               oGridex1:addrow( {aItems[n,1], , , } )
               oGridex1:addrow( {aItems[n,2], , , } )
               oGridex1:addrow( {aItems[n,3], , , } )
           next

   @ 4,-2 GROUPBOX oGroup1 CAPTION ""  SIZE 544,355 ;
        STYLE BS_LEFT   

   ACTIVATE DIALOG oDlg 

RETURN Nil
Veja como fica o grid, sem divisão das colunas e sem cabeçalho:
Imagem

Estou usando o Harbour 2.1, HwGui CVS e MingW.

Abraços,

Adicionar Colunas em Grid

Enviado: 09 Mai 2011 15:17
por Pablo César
Toledo, se você ja tem a sua matriz, por quê não executa o GRID ja com ITEMS aItens ? Como é feito em HMG ? Ao invés de adicionar as rows e columns ? Pra mim tem algo de errado no seu argumento na hora de adicionar as rows.

Adicionar Colunas em Grid

Enviado: 09 Mai 2011 15:32
por Toledo
Pablo, o GRID na HwGui é um pouco diferente de como é feito na HMG. Primeiro você tem que criar o objeto GRID e depois adicionar os HEADER (cabeçalho) e as ROWs (linhas).

Mas acho que o problema está na própria HwGui, tentei compilar o exemplo (Grid_6.prg) que está na pasta \HWGUI\SAMPLES\GRID e também não funcionou, fica do mesmo jeito.

Abraços,

Adicionar Colunas em Grid

Enviado: 09 Mai 2011 16:15
por Pablo César
o GRID na HwGui é um pouco diferente de como é feito na HMG. Primeiro você tem que criar o objeto GRID e depois adicionar os HEADER (cabeçalho) e as ROWs (linhas).
Desculpe então, pensei que funcionassem de forma similar: ja carregando de vez a matriz. Em HMG, senão me engano, também dá para adicionar colunas. Mas não vem ao caso.

Adicionar Colunas em Grid

Enviado: 09 Mai 2011 17:44
por Toledo
Amigos, resolvi... troquei o GRID pelo BROWSE com Array.

Abraços,