Page 1 of 1

problema de pintado del xBrowse

Posted: Fri May 22, 2020 7:20 am
by MOISES
Hola:

Hay un problema de pintado. No pinta toda la anchura de una vez, sino que primero pinta el xBrowse hasta mitad de la pantalla, y luego lo ensancha. El efecto es bastante feo, pues parece que la app va a trompicones.

Aquí pongo un ejemplo:

Code: Select all


#include "fivewin.ch"
#include "xbrowse.ch"



function main()

local oWnd
local oGrid
local oBtn, oGet1, oGet2




   USE C:\FWH\SAMPLES\CUSTOMER ALIAS "BASE" NEW

   DEFINE WINDOW oWnd
   oWnd:nHeight := ScreenHeight()

 

   @ 10, 151 XBROWSE oGrid ;
      SIZE -1, -1 PIXEL ;
      OF oWnd ;
      DATASOURCE "BASE" ;
      AUTOSORT ;
      AUTOCOLS ;
      CELL LINES NOBORDER





    oGrid:CreateFromCode()


     @ 10, 10 BUTTON oBtn PROMPT "Filtro" OF oPanel ;
              SIZE 80, 20 PIXEL                   ;
              ACTION ( alert(oGrid:Refresh()) )


ACTIVATE WINDOW oWnd MAXIMIZED


Return nil

 
Muchas gracias.

Re: problema de pintado del xBrowse

Posted: Fri May 22, 2020 9:30 pm
by Cgallegoa
Moises, así pinta bien:

Code: Select all

#include "fivewin.ch"
#include "xbrowse.ch"


function main()
local oWnd
local oGrid
local oBtn, oGet1, oGet2

   USE C:\FWH\SAMPLES\CUSTOMER ALIAS "BASE" NEW

   DEFINE WINDOW oWnd
   oWnd:nHeight := ScreenHeight()

ACTIVATE WINDOW oWnd MAXIMIZED ON INIT PintaBrw(oWnd)

Return nil
//**************************************************************************//

Function PintaBrw(oWnd)
LOCAL oGrid, oBtn
   @ 10, 151 XBROWSE oGrid ;
      SIZE -1, -1 PIXEL ;
      OF oWnd ;
      DATASOURCE "BASE" ;
      AUTOSORT ;
      AUTOCOLS ;
      CELL LINES NOBORDER

   oGrid:CreateFromCode()

   @ 10, 10 BUTTON oBtn PROMPT "Filtro" OF oWnd ;
            SIZE 80, 20 PIXEL                   ;
            ACTION ( alert(oGrid:Refresh()) )
Return(NIL)
//**************************************************************************//
Saludos,

Re: problema de pintado del xBrowse

Posted: Mon May 25, 2020 9:07 am
by MOISES
Muchas gracias Carlos.

Re: problema de pintado del xBrowse

Posted: Fri May 29, 2020 1:05 pm
by pacotre
A vueltas con XBrowse.

Deseo que toda la linea que tiene el Focus aparezca con fondo azul, y no sólo la celda sobre la que está el cursor.

Lo he intentado con

oBrw:bClrSel := {|| { CLR_BLACK,fondo}}
oBrw:bClrSelFocus := {|| { CLR_BLACK,CRED}}
oBrw:bClrRowFocus := {|| { CLR_BLACK,letradialog}}

La única que responde a _ de color, y solo sobre la celda es oBrw:bClrSelFocus , las demás no hacen nada. Como puedo hacerlo?. Quiero que destaque toda la linea, como sí responde oBrw:bClrStd en función al contenido del registro.

Alguna solución?

Solucionado con oBrw:nMarqueeStyle := MARQSTYLE_HIGHLROW

Gracias

Re: problema de pintado del xBrowse

Posted: Fri May 29, 2020 2:19 pm
by leandro
Intenta así

Code: Select all

oBrw:nMarqueeStyle      := MARQSTYLE_HIGHLCELL

Re: problema de pintado del xBrowse

Posted: Fri May 29, 2020 6:58 pm
by jvtecheto
pacotre wrote:A vueltas con XBrowse.

Deseo que toda la linea que tiene el Focus aparezca con fondo azul, y no sólo la celda sobre la que está el cursor.

Lo he intentado con

oBrw:bClrSel := {|| { CLR_BLACK,fondo}}
oBrw:bClrSelFocus := {|| { CLR_BLACK,CRED}}
oBrw:bClrRowFocus := {|| { CLR_BLACK,letradialog}}

La única que responde a _ de color, y solo sobre la celda es oBrw:bClrSelFocus , las demás no hacen nada. Como puedo hacerlo?. Quiero que destaque toda la linea, como sí responde oBrw:bClrStd en función al contenido del registro.

Alguna solución?

Solucionado con oBrw:nMarqueeStyle := MARQSTYLE_HIGHLROW

Gracias
Hostias Pacotre, has preguntado y solucionado en el mismo post. No lo habia visto en mi vida. :D

Perdon por el off-topic.

Saludos.

Jose.

Re: problema de pintado del xBrowse

Posted: Sat May 30, 2020 6:42 am
by pacotre
:D :D :D
para no meter otro edité el primero una hora después. :D :D :D y así evitar molestias de responde a algo ya resuelto.

Re: problema de pintado del xBrowse

Posted: Mon Jun 01, 2020 2:59 am
by nageswaragunupudi
MOISES wrote:Hola:

Hay un problema de pintado. No pinta toda la anchura de una vez, sino que primero pinta el xBrowse hasta mitad de la pantalla, y luego lo ensancha. El efecto es bastante feo, pues parece que la app va a trompicones.

Aquí pongo un ejemplo:

Code: Select all


#include "fivewin.ch"
#include "xbrowse.ch"



function main()

local oWnd
local oGrid
local oBtn, oGet1, oGet2




   USE C:\FWH\SAMPLES\CUSTOMER ALIAS "BASE" NEW

   DEFINE WINDOW oWnd
   oWnd:nHeight := ScreenHeight()

 

   @ 10, 151 XBROWSE oGrid ;
      SIZE -1, -1 PIXEL ;
      OF oWnd ;
      DATASOURCE "BASE" ;
      AUTOSORT ;
      AUTOCOLS ;
      CELL LINES NOBORDER





    oGrid:CreateFromCode()


     @ 10, 10 BUTTON oBtn PROMPT "Filtro" OF oPanel ;
              SIZE 80, 20 PIXEL                   ;
              ACTION ( alert(oGrid:Refresh()) )


ACTIVATE WINDOW oWnd MAXIMIZED


Return nil

 
Muchas gracias.
After

Code: Select all

  DEFINE WINDOW oWnd
   oWnd: nHeight : = ScreenHeight ( )
 
Add the line

Code: Select all

oWnd:nWidth := ScreenWidth()
 

Re: problema de pintado del xBrowse

Posted: Tue Jun 02, 2020 8:11 am
by MOISES
With the change, the painting problem is transferred to the bottom of the xBrowse.