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: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

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, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

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, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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