Página 1 de 1
Congelar Linhas TBrowse
Enviado: 19 Nov 2007 09:46
por digitom
Pessoal,
Alguém pode me dizer como faço para "congelar linhas" usando o tbrowse?
Explico:
O meu relatório e grande na horizontal e vertical. Então preciso congelar as linhas e colunas, sendo que consigo congelar as colunas, mas o cabeçalho não estou conseguindo.
Pensei colocar estático, mas quando pressiono seta a direita ficaria o mesmo texto, eu quero que o cabelho acompanhe.
Naum sei se fui claro, se etenderam.
Agradeço desde já a colaboração.
Enviado: 19 Nov 2007 10:25
por Pablo César
Uma dica: Exiba esse cabeçalho FORA do TBROWSE. Isto é, faça uma função que utilize apenas o @ SAY nas linhas acima do seu TBROWSE. Claro que seu TBROWSE deverá começar como mínimo abaixo da linha 4 e essas exibição que ora chamada por alguma função de dentro do TBROWSE, você irá mostrar em tela nas linhas @ 00, @ 01, @02 então dará a impressão VISUAL ao usuário que está sendo exibido o cabeçalho do seu relatorio de forma "congelada".
Enviado: 19 Nov 2007 10:34
por digitom
É o que estou usando.
Mas o Problema é que meu relatório é grande na horizontal.
Ex:
NOME JAN FEV MAR ABR MAI JUN JUL AGO SET OUT NOV DEZ TOTAL MEDIA
O titulo só dá para aparecer ate jun
Ex:
NOME JAN FEV MAR ABR MAI JUN
E quando uso seta a direita continua a aparecer o mesmo cabecalho sendo que ele deveria acompanhar o texto do tbrowse.
Enviado: 19 Nov 2007 10:46
por Pablo César
Pois então coloque uma função que muda tal cabeçalho conforme o número da coluna em que o cursor se encontra. Essa função você deverá colocar após que seu TBROWSE estiver "establilizado", logo após do
Código: Selecionar todos
while ( !b:stabilize() )
nKey := InKey()
if ( nKey != 0 )
exit
endif
enddo
if ( b:stable )
if ( b:hitTop .or. b:hitBottom )
Tone(125, 0)
endif
SUA_FUN(b:colPos) // Aqui a funçao que tem @ SAY
nKey := InKey(0)
endif
Desta forma o @ SAY (ou digamo o cabeçalho) irá acompanhar conforme for acionadas as teclas de navegação.
Enviado: 19 Nov 2007 11:44
por alaminojunior
Quando vc adiciona uma coluna não dá para adicionar também o cabeçalho ?
otbr1:= TbColumnNew("Endereço1", { || Ender1 } )
otbr2:= TbColumnNew("Endereço2", { || Ender2 } )
otbr:addcolumn(otbr1) // otbr é o objeto tbrowse
otbr:addcolumn(otbr2)
Enviado: 19 Nov 2007 14:43
por digitom

)
Consegui resolver. Estava dano "bobeira" hehehe.
Basta eu colocar o cabeçalho que acabou o meu problema.
Obrigado a todos pelo empenho.
Enviado: 19 Nov 2007 20:50
por Pablo César
digitom escreveu:Basta eu colocar o cabeçalho que acabou o meu problema.
Tá brincando ? Puxa... sabia que nem sequer pensei nisso... hihihihi Mas para complementar a minha sugestão passada, você pode ainda combinar essa técnica do @ SAY junto com o cabeçalho de cada campo. Isso serviria para fazer cabeçalho com mais de uma linha.
Se precisar adicionar colunas ou CONDICIONAR a exibição ou não de uma coluna, você terá uma sequência variável de colunas, daí então em vez de fazer pelo COLPOS() faria pelo nome do cabeçalho o qual este estaria armazenado em VETOR.