Page 1 of 2
Problema pintado xbrowse FWH2210 - SOLUCIONADO
Posted: Tue Nov 08, 2022 10:46 pm
by leandro
Hola buenas tardes
Hicimos la actualización a la versión de fw2210, de momento no hemos notado muchos problemas, lo mas visible es un error de pintado con el xbrowse.
El problema es que en las líneas que están en blanco hacia abajo, las colorea con el color que tenga la ultima celda.
Re: Problema pintado xbrowse FWH2210
Posted: Wed Nov 09, 2022 12:52 pm
by karinha
Exemplo para pruebas?
Regards, saludos.
Re: Problema pintado xbrowse FWH2210
Posted: Thu Nov 10, 2022 2:22 am
by leandro
Amigo gracias por responder
Code: Select all | Expand
#include "fivewin.ch"
#include "xbrowse.ch"
function Main()
local oWnd, oBar, oBrw, oFont
Local aLlena := {}
DEFINE FONT oFont NAME 'TAHOMA' SIZE 0,-12
DEFINE WINDOW oWnd TITLE "Prueba xbrowse 2210"
AAdd( aLlena, { "primera", "segunda", "tercera", "cuarta" } )
AAdd( aLlena, { "quinta", "laseis", "septima", "octava" } )
AAdd( aLlena, { "novena", "decima", "undécima", "doceava" } )
SET MESSAGE OF oWnd TO "" 2007
@ 0,0 XBROWSE oBrw OF oWnd ;
COLUMNS 1, 2, 3, 4 ;
HEADERS "uno","dos","tres","cuatro" ;
COLSIZES 100, 100, 100, 100 ;
DATASOURCE aLlena LINES STYLE FLAT NOBORDER
WITH OBJECT oBrw
:CreateFromCode()
:l2007 := .F.
:lFitGridHeight := .T.
:nMarqueeStyle := MARQSTYLE_HIGHLROW
:lColDividerComplete := .t.
:nColorPen := CLR_HGRAY
:lFullGrid := .T.
:nStretchCol := STRETCHCOL_LAST
:bClrHeader := { || { CLR_WHITE, CLR_WHITE, CLR_HGRAY } }
:aCols[2]:oFooterFont := oFont
:aCols[2]:bClrStd = {|| {Rgb(55,55,55),if(aLlena[oBrw:nArrayAt][2]=="decima",nRGB(212,0,212),nRGB(212,212,212)) } }
:aCols[2]:bClrSelFocus = {|| {CLR_WHITE,nRGB(139,139,139) } }
END
oWnd:oClient := oBrw
ACTIVATE WINDOW oWnd
return nil
Re: Problema pintado xbrowse FWH2210
Posted: Thu Nov 10, 2022 1:26 pm
by karinha
Leandro, aqui funciona bién con FWH1905. Tú ejemplo és perfecto. Gracias.
Code: Select all | Expand
// C:\FWH..\SAMPLES\LEANDRO6.PRG
#include "fivewin.ch"
#include "xbrowse.ch"
FUNCTION Main()
LOCAL oWnd, oBar, oBrw, oFont
LOCAL aLlena := {}
DEFINE FONT oFont NAME 'TAHOMA' SIZE 0, - 12
DEFINE WINDOW oWnd TITLE "Prueba xbrowse 2210"
AAdd( aLlena, { "primera", "segunda", "tercera", "cuarta" } )
AAdd( aLlena, { "quinta", "laseis", "septima", "octava" } )
AAdd( aLlena, { "novena", "decima", "undécima", "doceava" } )
SET MESSAGE OF oWnd TO "" 2007
@ 0, 0 XBROWSE oBrw OF oWnd ;
COLUMNS 1, 2, 3, 4 ;
HEADERS "uno", "dos", "tres", "cuatro" ;
COLSIZES 100, 100, 100, 100 ;
DATASOURCE aLlena LINES STYLE FLAT NOBORDER
WITH OBJECT oBrw
:l2007 := .F.
:lFitGridHeight := .T.
:nMarqueeStyle := MARQSTYLE_HIGHLROW
:lColDividerComplete := .T.
:nColorPen := CLR_HGRAY
:lFullGrid := .T.
:nStretchCol := STRETCHCOL_LAST
:bClrHeader := {|| { CLR_WHITE, CLR_WHITE, CLR_HGRAY } }
:aCols[ 2 ]:oFooterFont := oFont
// Ejemplo Leandro. Funciona bien con FWH1905...
// :aCols[ 2 ]:bClrStd := {|| { Rgb( 55, 55, 55 ), if( aLlena[ oBrw:nArrayAt ][ 2 ] == "decima", nRGB( 212, 0, 212 ), nRGB( 212, 212, 212 ) ) } }
// Asi, tambien funciona.
:aCols[ 2 ]:bClrStd := { || { IF( aLlena[ oBrw:nArrayAt ][ 2 ] == "decima", CLR_GREEN, CLR_WHITE ), CLR_BLACK, CLR_GRAY } }
:bClrHeader := { || { CLR_GREEN, CLR_WHITE, CLR_WHITE } }
:aCols[ 2 ]:bClrSelFocus := {|| { CLR_WHITE, nRGB( 139, 139, 139 ) } }
:CreateFromCode()
END
oWnd:oClient := oBrw
ACTIVATE WINDOW oWnd
RETURN NIL
// FIN / END
Regards, saludos.
Re: Problema pintado xbrowse FWH2210
Posted: Thu Nov 10, 2022 8:19 pm
by cnavarro
Joao, creo que Leandro se refiere a que en la versión 21.05, no pintaba toda la columna, sólo hasta donde hay datos. En la versión actual pinta toda la columna, y dependiendo del valor que tenga esa columna en la última fila, el resto ( que ya está vacío ) lo pinta de ese mismo color, no del color de fondo del xbrowse
Que Leandro comente si estoy en lo cierto.
Re: Problema pintado xbrowse FWH2210
Posted: Thu Nov 10, 2022 8:36 pm
by Antonio Linares
Estimado Leandro,
el Sr. Rao ya lo está revisando para ofrecer un nuevo build, cuanto antes, que lo corrija
Muchas gracias por el excelente feedback
Re: Problema pintado xbrowse FWH2210
Posted: Thu Nov 10, 2022 10:17 pm
by leandro
Gracias a todos por responder
Que Leandro comente si estoy en lo cierto.
Estas en lo cierto amigo
Vale Antonio, muchas gracias
Re: Problema pintado xbrowse FWH2210
Posted: Wed Dec 14, 2022 12:27 am
by leandro
Antonio que pena molestar
Sabes si este problemilla ya fue corregido?
De antemano gracias
Re: Problema pintado xbrowse FWH2210
Posted: Wed Dec 14, 2022 9:00 am
by Antonio Linares
Estimado Leandro,
Lo acabo de probar y sigue fallando asi que me estoy poniendo en contacto con Rao para saber como va
Muchas gracias por el recordatorio
Re: Problema pintado xbrowse FWH2210
Posted: Wed Dec 14, 2022 10:27 am
by nageswaragunupudi
This is not an error. Quite a few users wanted that fullgrid browse should look like Excel and since Excel extends a column's color till bottom, fullgrid also extend the color till the bottom.
Considering their proposal, we made this change.
Different users have different tastes.
Now that we see you prefer the older look, we will make this feature optional from the next version.
For now, if you want to revert to the old look, please make a small change to xbrowse.prg
Method EraseData(...) CLASS TXBrwColumn.
At line 15327, you see:
Please change it as:
Re: Problema pintado xbrowse FWH2210
Posted: Wed Dec 14, 2022 3:12 pm
by cnavarro
Creo que puede haber otra posibilidad utilizando las DATAS lColDividerComplete y lRowDividerComplete con valor .T., y lFullGrid a .F., haciendo estos _ en el
Method Paint de la clase XBrowse, así podremos seguir utilizando ambas posibilidades ( lFullGrid en .T. )
Code: Select all | Expand
.../...
if nColStyle > 0
// CNL - 14/12/2022
// if ::lColDividerComplete
if ::lColDividerComplete .or. ::lFullGrid
nHeight := nLastRow
else
nHeight := ( ::nRowHeight * ( nRowPos - 1 ) ) + nFirstRow
endif
.../...
if nRowStyle > 0
nRow := ::FirstRow() - 1
// CNL - 14/12/2022
// nTemp2 := if( ::lFullGrid, nMaxRows, ::nDataRows )
nTemp2 := if( ::lFullGrid .or. ::lRowDividerComplete, nMaxRows, ::nDataRows )
.../...
Incluso ofrece la posibilidad de poder dibujar solo las lineas de
division horizontales ( lColDividerComplete := .F. y lRowDividerComplete := .T., o solo las verticales )
Si alguien lo prueba y me confirma .....
Re: Problema pintado xbrowse FWH2210
Posted: Wed Dec 14, 2022 10:01 pm
by leandro
Amigo como vas?
Siguiendo tus instrucciones, agregue el prg al proyecto y compilo, pero cuando debe cargar el primer xbrowse, al inicio de la app, para seleccionar el usuario, sale el siguiente error:
Code: Select all | Expand
Application
===========
Path and name: C:\DLYMA\hymlyma.exe (32 bits)
Size: 8,177,664 bytes
Compiler version: xHarbour 1.2.3 Intl. (SimpLex) (Build 20221118)
FiveWin version: FWH 22.10
C compiler version: Borland/Embarcadero C++ 7.4 (32-bit)
Windows 11 64 Bits, version: 6.2, Build 9200
Time from start: 0 hours 0 mins 1 secs
Error occurred at: 14/12/2022, 16:55:17
Error description: Error BASE/1003 No existe la variable: BXBROWSE
Stack Calls
===========
Called from: z:\prg\Xbrowse.prg => TXBROWS( 18060 )
Called from: z:\prg\Xbrowse.prg => XBROWSENEW( 17583 )
Called from: z:\prg\R32_menu.prg => MUESTRASESION( 1761 )
Called from: z:\prg\R32_menu.prg => (b)INICIONUEVO( 1409 )
Called from: .\source\internal\TDOCKPNEL.PRG => TDOCKPNEL:PAINTPNELH( 814 )
Called from: .\source\internal\TDOCKPNEL.PRG => TDOCKPNEL:PAINTCTRLSPNELP( 739 )
Called from: .\source\internal\TDOCKPNEL.PRG => (b)TDOCKPNEL:CREATEPNELP( 660 )
Called from: .\source\classes\TPANEL.PRG => TPANEL:PAINT( 168 )
Called from: .\source\classes\TPANEL.PRG => (b)TPANEL:TPANEL( 24 )
Called from: => TPANEL:DISPLAY( 0 )
Called from: .\source\classes\CONTROL.PRG => TPANEL:HANDLEEVENT( 1823 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3689 )
Called from: => WEBVIEW_CREATE( 0 )
Called from: .\source\classes\TWEBVIEW.PRG => (b)TWEBVIEW:TWEBVIEW( 21 )
Called from: => TWEBVIEW:NEW( 0 )
Called from: z:\prg\R32_menu.prg => MUETRAINFOWEB( 1473 )
Called from: z:\prg\R32_menu.prg => (b)INICIONUEVO( 1391 )
Called from: .\source\internal\TDOCKPNEL.PRG => TDOCKPNEL:PAINTPNELH( 814 )
Called from: .\source\internal\TDOCKPNEL.PRG => TDOCKPNEL:PAINTCTRLSPNELP( 739 )
Called from: .\source\internal\TDOCKPNEL.PRG => (b)TDOCKPNEL:CREATEPNELP( 660 )
Called from: .\source\classes\TPANEL.PRG => TPANEL:PAINT( 168 )
Called from: .\source\classes\TPANEL.PRG => (b)TPANEL:TPANEL( 24 )
Called from: => TPANEL:DISPLAY( 0 )
Called from: .\source\classes\CONTROL.PRG => TPANEL:HANDLEEVENT( 1823 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3689 )
Called from: => UPDATEWINDOW( 0 )
Called from: .\source\classes\WINDOW.PRG => TWINDOW:ACTIVATE( 1091 )
Called from: z:\prg\R32_menu.prg => INICIONUEVO( 1414 )
Called from: z:\prg\R32_menu.prg => MAIN( 107 )
Re: Problema pintado xbrowse FWH2210
Posted: Wed Dec 14, 2022 10:03 pm
by cnavarro
Leandro, según parece es una variable de tu código, fijate en las llamadas de la pila
Called from: z:\prg\R32_menu.prg => MUESTRASESION( 1761 )
Called from: z:\prg\R32_menu.prg => (b)INICIONUEVO( 1409 )
Re: Problema pintado xbrowse FWH2210
Posted: Mon Dec 19, 2022 3:08 pm
by leandro
Gracias por responder amigo, pero no tengo nada en esa linea con esa variable, es mas busque en todos los prg y no tengo definida esa variable en ningun lado. Sin incluir ese xbrowse.prg, con la modificación que indicar carga bien la info, por que no creo que tenga nada que ver con nuestro código.
Re: Problema pintado xbrowse FWH2210
Posted: Mon Dec 19, 2022 3:09 pm
by leandro
Antonio, te puedo molestar con algo
Serias tan amable de incluir ese modificación en las libs y enviármelas. De antemano gracias.