Cor do tbrowse quando coluna fixa

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20416
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Cor do tbrowse quando coluna fixa

Mensagem por JoséQuintas »

Agora que reparei num detalhe do tbrowse:

Código: Selecionar todos

oBrowse:ColorRect( { oBrowse:RowPos, oBrowse:LeftVisible, oBrowse:RowPos, oBrowse:RightVisible }, { 3, 3 } )
Quando o tbrowse é normal, isso funciona sem problemas.
Mas quando fixamos colunas... isso não funciona para as colunas fixas.

Provavelmente a solução vai ser usar oBrowse:Freeze, quando este não for NIL ou zero... ainda não olhei o default.

Código: Selecionar todos

IF ! Empty( oBrowse:Freeze )
   oBrowse:ColorRect( { oBrowse:RowPos, 1, oBrowse:RowPos, oBrowse:Freeze }, { 3, 3 } )
ENDIF
oBrowse:ColorRect( { oBrowse:RowPos, oBrowse:LeftVisible, oBrowse:RowPos, oBrowse:RightVisible }, { 3, 3 } )
Alguém já tinha reparado nisso, e/ou sabe se é normal o comportamento?
Alguém tem Clipper pra fazer o teste, pra confirmar se é herança ou se é bug?
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
clodoaldomonteiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 821
Registrado em: 30 Dez 2006 13:17
Localização: Teresina-PI
Contato:

Cor do tbrowse quando coluna fixa

Mensagem por clodoaldomonteiro »

Bom dia,

Tive problema com com a cor da linha em foco, quando congelava esta, daí usei uma função da GTWVW para que a linha fique demarcada com um box de linha pontilhada.

Código: Selecionar todos

IF NEXTKEY() = 0  //Inkey() == 0
   br_w:RefreshCurrent()
   DO WHILE ! br_w:Stabilize()
   ENDDO
   br_w:ColorRect( { br_w:RowPos, br_w:LeftVisible, br_w:RowPos, br_w:RightVisible }, { 5, 5 } ) // linha que está com o cursor
   br_w:ColorRect( { br_w:RowPos, br_w:ColPos, br_w:RowPos, br_w:ColPos }, { 2, 2 } ) // linha/coluna que está com o cursor
   wvw_DrawFocusRect( , br_w:RowPos+li_sup+1, br_w:nLeft, br_w:RowPos+li_sup+1, br_w:nRight ) // linha pontilhada que está com o cursor
ENDIF
Anexos
Brouse com coluna fixada e Box pontilhado na linha em foco.
Brouse com coluna fixada e Box pontilhado na linha em foco.
Browse com linha colorida e Box pontilhado em toda a linha
Browse com linha colorida e Box pontilhado em toda a linha
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20416
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Cor do tbrowse quando coluna fixa

Mensagem por JoséQuintas »

Aquele que mostrei deu certo.

Supondo que congelou até a coluna 3, seria repintar da 1 até 3

Aqui repinta ou tudo, ou somente a parte "não congelada"

Código: Selecionar todos

oBrowse:ColorRect( { oBrowse:RowPos, oBrowse:LeftVisible, oBrowse:RowPos, oBrowse:RightVisible }, { 3, 3 } )
Aqui repinta da 1 até a congelada, que são as que não foram repintadas na rotina anterior

Código: Selecionar todos

IF ! Empty( oBrowse:Freeze )
   oBrowse:ColorRect( { oBrowse:RowPos, 1, oBrowse:RowPos, oBrowse:Freeze }, { 3, 3 } )
ENDIF
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder