In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
ProgressBar y labels
-
- Mensajes: 1310
- Registrado: Mié Sep 26, 2007 7:12 pm
ProgressBar y labels
Buenas Xailer Team.
Dado que las Progressbar que utilizamos no parecen admitir texto, he
decidido poner un label justo encima, pero éste ni se muestra ni se
actualiza, haga un refresh sleep(x) ni nada por el estilo.
Alguna idea?
Gracias.
Dado que las Progressbar que utilizamos no parecen admitir texto, he
decidido poner un label justo encima, pero éste ni se muestra ni se
actualiza, haga un refresh sleep(x) ni nada por el estilo.
Alguna idea?
Gracias.
-
- Mensajes: 291
- Registrado: Jue Ene 31, 2013 1:10 pm
ProgressBar y labels
Bingen,
> Alguna idea?
Es muy difícil hacer lo que quieres pero se me ocurre que podríamos irnos
al Caribe y lo miramos allí con calma.
Si prefieres solucinarlo desde
aquí mira en el ZIP a ver si te sirve.
Crea la barra en el OnInitialize() del formulario:
WITH OBJECT ::oProgress := TProgressBarEx():New( Self )
:SetBounds( ... )
:cText := "Copiando %i"
:nClrText := clBlack
:Create()
END
Si la usas en muchos sitios y prefieres una DLL, para poder crear la barra
desde el IDE en vez de a mano, no tienes más que decirlo.
Saludos,
José Lalín
--
> Alguna idea?
Es muy difícil hacer lo que quieres pero se me ocurre que podríamos irnos
al Caribe y lo miramos allí con calma.

aquí mira en el ZIP a ver si te sirve.
Crea la barra en el OnInitialize() del formulario:
WITH OBJECT ::oProgress := TProgressBarEx():New( Self )
:SetBounds( ... )
:cText := "Copiando %i"
:nClrText := clBlack
:Create()
END
Si la usas en muchos sitios y prefieres una DLL, para poder crear la barra
desde el IDE en vez de a mano, no tienes más que decirlo.
Saludos,
José Lalín
--
ProgressBar y labels
Bingen,
a mi tampoco me "refresca" un label (por mas que fuerze
ProcessMessages())... en un bucle repetitivo y que muestro una ProgressBar.
Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
REFRESCA!!!
No se en que actualización/revisión de Xailer dejó de funcionar, pero se que
hace ya un tiempo.
Un Saludo,
Xevi.
"Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Buenas Xailer Team.
Dado que las Progressbar que utilizamos no parecen admitir texto, he
decidido poner un label justo encima, pero éste ni se muestra ni se
actualiza, haga un refresh sleep(x) ni nada por el estilo.
Alguna idea?
Gracias.
a mi tampoco me "refresca" un label (por mas que fuerze
ProcessMessages())... en un bucle repetitivo y que muestro una ProgressBar.
Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
REFRESCA!!!
No se en que actualización/revisión de Xailer dejó de funcionar, pero se que
hace ya un tiempo.
Un Saludo,
Xevi.
"Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Buenas Xailer Team.
Dado que las Progressbar que utilizamos no parecen admitir texto, he
decidido poner un label justo encima, pero éste ni se muestra ni se
actualiza, haga un refresh sleep(x) ni nada por el estilo.
Alguna idea?
Gracias.
Un Saludo,
Xevi.
Xevi.
-
- Mensajes: 1310
- Registrado: Mié Sep 26, 2007 7:12 pm
ProgressBar y labels
Curioso Xevi, gracias pero he optado por la solución anterior.
Salu2
El 01/02/2013 14:59, Xevi escribió:
> Bingen,
>
> a mi tampoco me "refresca" un label (por mas que fuerze
> ProcessMessages())... en un bucle repetitivo y que muestro una ProgressBar.
>
> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
> REFRESCA!!!
>
> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
> que hace ya un tiempo.
>
>
> Un Saludo,
> Xevi.
>
>
> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Buenas Xailer Team.
>
> Dado que las Progressbar que utilizamos no parecen admitir texto, he
> decidido poner un label justo encima, pero éste ni se muestra ni se
> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>
> Alguna idea?
>
> Gracias.
Salu2
El 01/02/2013 14:59, Xevi escribió:
> Bingen,
>
> a mi tampoco me "refresca" un label (por mas que fuerze
> ProcessMessages())... en un bucle repetitivo y que muestro una ProgressBar.
>
> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
> REFRESCA!!!
>
> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
> que hace ya un tiempo.
>
>
> Un Saludo,
> Xevi.
>
>
> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Buenas Xailer Team.
>
> Dado que las Progressbar que utilizamos no parecen admitir texto, he
> decidido poner un label justo encima, pero éste ni se muestra ni se
> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>
> Alguna idea?
>
> Gracias.
-
- Mensajes: 1310
- Registrado: Mié Sep 26, 2007 7:12 pm
ProgressBar y labels
Hola José
A lo de ir al caribe si que me apunto, allí se ven las cosas más claras
¿será la luz del sol que por aquí por el norte no abunda?
) Aunque
tampoco se ven mal las cosas por tu tierra con un pulpo y unos
albariños. ;·)
Casi, con esto no va:
>
> WITH OBJECT ::oProgress := TProgressBarEx():New( Self )
> :SetBounds( ... )
> :cText := "Copiando %i"
> :nClrText := clBlack
> :Create()
> END
Para que funcione Hay que cambiarlo por.
WITH OBJECT ::oProgress := TProgressBarEx():New( Self )
:SetBounds( ... )
:Create()
:cText := "Copiando %i"
:nClrText := clBlack
END
Y así si que va correctamente.
Al final he optado por sobrecargar la clase que me parece más limpio y
espero que más correcto:
//---------------------------------------------------------- --------------------
// Sobrecarga a ProgressBar para que pueda contener un texto con un
numerador
Class TProgressBar From XProgressBar
PROPERTY cText INIT "" //Si se quiere usar un numerador
junto con un texto "Procesando registro %i"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//---------------------------------------------------------- ----------------
METHOD WMPaint( hDC ) CLASS TProgressBar
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
cText := StrTran( ::cText, "%i", AllTrim( ToString( ::nValue ) ) )
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER,
DT_VCENTER, DT_SINGLELINE ) )
ENDIF
Super:WmPaint()
RETURN ::EndPaint( hDC )
//---------------------------------------------------------- ----------------
Gracias y saludos.
A lo de ir al caribe si que me apunto, allí se ven las cosas más claras
¿será la luz del sol que por aquí por el norte no abunda?

tampoco se ven mal las cosas por tu tierra con un pulpo y unos
albariños. ;·)
Casi, con esto no va:
>
> WITH OBJECT ::oProgress := TProgressBarEx():New( Self )
> :SetBounds( ... )
> :cText := "Copiando %i"
> :nClrText := clBlack
> :Create()
> END
Para que funcione Hay que cambiarlo por.
WITH OBJECT ::oProgress := TProgressBarEx():New( Self )
:SetBounds( ... )
:Create()
:cText := "Copiando %i"
:nClrText := clBlack
END
Y así si que va correctamente.
Al final he optado por sobrecargar la clase que me parece más limpio y
espero que más correcto:
//---------------------------------------------------------- --------------------
// Sobrecarga a ProgressBar para que pueda contener un texto con un
numerador
Class TProgressBar From XProgressBar
PROPERTY cText INIT "" //Si se quiere usar un numerador
junto con un texto "Procesando registro %i"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//---------------------------------------------------------- ----------------
METHOD WMPaint( hDC ) CLASS TProgressBar
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
cText := StrTran( ::cText, "%i", AllTrim( ToString( ::nValue ) ) )
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER,
DT_VCENTER, DT_SINGLELINE ) )
ENDIF
Super:WmPaint()
RETURN ::EndPaint( hDC )
//---------------------------------------------------------- ----------------
Gracias y saludos.
-
- Mensajes: 1310
- Registrado: Mié Sep 26, 2007 7:12 pm
ProgressBar y labels
Un último cambio por si se quiere usar un índice y un total junto con un
texto "Procesando registro %1 de %2"
//---------------------------------------------------------- --------------------
// Sobrecarga a ProgressBar para que pueda contener un texto y
opcionalmente un indice de progreso y un total
Class TProgressBar From XProgressBar
PROPERTY cText INIT "" //Si se quiere usar un numerador
junto con un texto "Procesando registro %1 de %2"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//---------------------------------------------------------- ----------------
METHOD WMPaint( hDC ) CLASS TProgressBar
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
cText := StrTran( ::cText, "%1", AllTrim( ToString( ::nValue ) ) )
cText := StrTran( cText, "%2", AllTrim( ToString( ::nMax ) ) )
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER,
DT_VCENTER, DT_SINGLELINE ) )
ENDIF
Super:WmPaint()
RETURN ::EndPaint( hDC )
//---------------------------------------------------------- ----------------
texto "Procesando registro %1 de %2"
//---------------------------------------------------------- --------------------
// Sobrecarga a ProgressBar para que pueda contener un texto y
opcionalmente un indice de progreso y un total
Class TProgressBar From XProgressBar
PROPERTY cText INIT "" //Si se quiere usar un numerador
junto con un texto "Procesando registro %1 de %2"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//---------------------------------------------------------- ----------------
METHOD WMPaint( hDC ) CLASS TProgressBar
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
cText := StrTran( ::cText, "%1", AllTrim( ToString( ::nValue ) ) )
cText := StrTran( cText, "%2", AllTrim( ToString( ::nMax ) ) )
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER,
DT_VCENTER, DT_SINGLELINE ) )
ENDIF
Super:WmPaint()
RETURN ::EndPaint( hDC )
//---------------------------------------------------------- ----------------
-
- Mensajes: 1831
- Registrado: Mar Oct 11, 2005 9:53 am
ProgressBar y labels
o igual lo sobrecargue sobre TProgressBar, pero no me funciona...
Hace rato que buscaba igual como poner el numero de % de avance...
Saludos
Ramón Zea
Móvil.: 993-231.62.29
Tel./Fax: 993-353-46-73
www.zeasoftware.com.mx
soporte@zeasoftware.com.mx
zeasoftware@hotmail.com
Aliado FACTURAXION
"Bingen Ugaldebere" escribió en el mensaje de
noticias:[email=510f9759@svctag-j7w3v3j....]510f9759@svctag-j7w3v3j....[/email]
Un último cambio por si se quiere usar un índice y un total junto con un
texto "Procesando registro %1 de %2"
//---------------------------------------------------------- --------------------
// Sobrecarga a ProgressBar para que pueda contener un texto y
opcionalmente un indice de progreso y un total
Class TProgressBar From XProgressBar
PROPERTY cText INIT "" //Si se quiere usar un numerador
junto con un texto "Procesando registro %1 de %2"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//---------------------------------------------------------- ----------------
METHOD WMPaint( hDC ) CLASS TProgressBar
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
cText := StrTran( ::cText, "%1", AllTrim( ToString( ::nValue ) ) )
cText := StrTran( cText, "%2", AllTrim( ToString( ::nMax ) ) )
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER,
DT_VCENTER, DT_SINGLELINE ) )
ENDIF
Super:WmPaint()
RETURN ::EndPaint( hDC )
//---------------------------------------------------------- ----------------
Hace rato que buscaba igual como poner el numero de % de avance...
Saludos
Ramón Zea
Móvil.: 993-231.62.29
Tel./Fax: 993-353-46-73
www.zeasoftware.com.mx
soporte@zeasoftware.com.mx
zeasoftware@hotmail.com
Aliado FACTURAXION
"Bingen Ugaldebere" escribió en el mensaje de
noticias:[email=510f9759@svctag-j7w3v3j....]510f9759@svctag-j7w3v3j....[/email]
Un último cambio por si se quiere usar un índice y un total junto con un
texto "Procesando registro %1 de %2"
//---------------------------------------------------------- --------------------
// Sobrecarga a ProgressBar para que pueda contener un texto y
opcionalmente un indice de progreso y un total
Class TProgressBar From XProgressBar
PROPERTY cText INIT "" //Si se quiere usar un numerador
junto con un texto "Procesando registro %1 de %2"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//---------------------------------------------------------- ----------------
METHOD WMPaint( hDC ) CLASS TProgressBar
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
cText := StrTran( ::cText, "%1", AllTrim( ToString( ::nValue ) ) )
cText := StrTran( cText, "%2", AllTrim( ToString( ::nMax ) ) )
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER,
DT_VCENTER, DT_SINGLELINE ) )
ENDIF
Super:WmPaint()
RETURN ::EndPaint( hDC )
//---------------------------------------------------------- ----------------
Ramón Zea
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
Móvil: 01-993-231-62-29
ramonzea@yahoo.com
zeasoftware@hotmail.com
zeasoft.movil@hotmail.com
http://www.paginasprodigy.com/zeasoftware/
-
- Mensajes: 360
- Registrado: Mié Dic 03, 2008 5:05 am
ProgressBar y labels
On 2/1/2013 7:59 AM, Xevi wrote:
> Bingen,
>
> a mi tampoco me "refresca" un label (por mas que fuerze
> ProcessMessages())... en un bucle repetitivo y que muestro una ProgressBar.
>
> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
> REFRESCA!!!
>
> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
> que hace ya un tiempo.
>
>
> Un Saludo,
> Xevi.
>
>
> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Buenas Xailer Team.
>
> Dado que las Progressbar que utilizamos no parecen admitir texto, he
> decidido poner un label justo encima, pero éste ni se muestra ni se
> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>
> Alguna idea?
>
> Gracias.
Xevi:
Puedes mostrar la fracción de código de programa donde muestras el Label !
A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
Quizas estamos hablando de cosas diferentes
Saludos...
> Bingen,
>
> a mi tampoco me "refresca" un label (por mas que fuerze
> ProcessMessages())... en un bucle repetitivo y que muestro una ProgressBar.
>
> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
> REFRESCA!!!
>
> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
> que hace ya un tiempo.
>
>
> Un Saludo,
> Xevi.
>
>
> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Buenas Xailer Team.
>
> Dado que las Progressbar que utilizamos no parecen admitir texto, he
> decidido poner un label justo encima, pero éste ni se muestra ni se
> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>
> Alguna idea?
>
> Gracias.
Xevi:
Puedes mostrar la fracción de código de programa donde muestras el Label !
A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
Quizas estamos hablando de cosas diferentes
Saludos...
ProgressBar y labels
Martin,
::oLabel1:lVisible := ::oLabel2:lVisible := ::oLblContador:lVisible :=
::oCkboxlProces1a1:lChecked
::oProgressBar1:nValue := 0
While .T.
::oBtnCancelar:SetFocus()
If ::lCancelar
Exit
EndIf
ProcessMessages()
cLectura := FReadStr( nHandle, nLenData )
If cLectura = Chr(26) .or. Empty( cLectura )
::oLblReferencia:cText := cRefe
Exit
EndIf
*LOGDEBUG(CLECTURA)
::oProgressBar1:nValue ++
::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E
999,999" )
If (AppData:lCitroen .and. Asc( Right( cLectura, 1 ) ) # 10) .or.;
(!AppData:lCitroen .and. (::oProgressBar1:nValue <
::oProgressBar1:nMax .and. Asc( Right( cLectura, 1 ) ) # 10))
xMsgDlg( ::aIdioma[19,AppData:nIdioma],
::aIdioma[16,AppData:nIdioma], mbOK,, IDI_ERROR )
Exit
EndIf
cRefe := ""
cRemp := ""
If AppData:lCitroen
For n:=2 to 14
If SubStr( cLectura, n, 1 ) # " "
cRefe += SubStr( cLectura, n, 1 )
EndIf
Next
cRefe := PadR( cRefe, 13 )
If ::oCkboxlProces1a1:lChecked //::oProgressBar1:nValue % 50 == 0
::oLblReferencia:cText := cRefe
EndIf
....
Un Saludo,
Xevi.
"Martin Del Angel" ha escrit al missatge:51100a67$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
On 2/1/2013 7:59 AM, Xevi wrote:
> Bingen,
>
> a mi tampoco me "refresca" un label (por mas que fuerze
> ProcessMessages())... en un bucle repetitivo y que muestro una
> ProgressBar.
>
> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
> REFRESCA!!!
>
> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
> que hace ya un tiempo.
>
>
> Un Saludo,
> Xevi.
>
>
> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Buenas Xailer Team.
>
> Dado que las Progressbar que utilizamos no parecen admitir texto, he
> decidido poner un label justo encima, pero éste ni se muestra ni se
> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>
> Alguna idea?
>
> Gracias.
Xevi:
Puedes mostrar la fracción de código de programa donde muestras el Label !
A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
Quizas estamos hablando de cosas diferentes
Saludos...
::oLabel1:lVisible := ::oLabel2:lVisible := ::oLblContador:lVisible :=
::oCkboxlProces1a1:lChecked
::oProgressBar1:nValue := 0
While .T.
::oBtnCancelar:SetFocus()
If ::lCancelar
Exit
EndIf
ProcessMessages()
cLectura := FReadStr( nHandle, nLenData )
If cLectura = Chr(26) .or. Empty( cLectura )
::oLblReferencia:cText := cRefe
Exit
EndIf
*LOGDEBUG(CLECTURA)
::oProgressBar1:nValue ++
::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E
999,999" )
If (AppData:lCitroen .and. Asc( Right( cLectura, 1 ) ) # 10) .or.;
(!AppData:lCitroen .and. (::oProgressBar1:nValue <
::oProgressBar1:nMax .and. Asc( Right( cLectura, 1 ) ) # 10))
xMsgDlg( ::aIdioma[19,AppData:nIdioma],
::aIdioma[16,AppData:nIdioma], mbOK,, IDI_ERROR )
Exit
EndIf
cRefe := ""
cRemp := ""
If AppData:lCitroen
For n:=2 to 14
If SubStr( cLectura, n, 1 ) # " "
cRefe += SubStr( cLectura, n, 1 )
EndIf
Next
cRefe := PadR( cRefe, 13 )
If ::oCkboxlProces1a1:lChecked //::oProgressBar1:nValue % 50 == 0
::oLblReferencia:cText := cRefe
EndIf
....
Un Saludo,
Xevi.
"Martin Del Angel" ha escrit al missatge:51100a67$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
On 2/1/2013 7:59 AM, Xevi wrote:
> Bingen,
>
> a mi tampoco me "refresca" un label (por mas que fuerze
> ProcessMessages())... en un bucle repetitivo y que muestro una
> ProgressBar.
>
> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
> REFRESCA!!!
>
> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
> que hace ya un tiempo.
>
>
> Un Saludo,
> Xevi.
>
>
> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Buenas Xailer Team.
>
> Dado que las Progressbar que utilizamos no parecen admitir texto, he
> decidido poner un label justo encima, pero éste ni se muestra ni se
> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>
> Alguna idea?
>
> Gracias.
Xevi:
Puedes mostrar la fracción de código de programa donde muestras el Label !
A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
Quizas estamos hablando de cosas diferentes
Saludos...
Un Saludo,
Xevi.
Xevi.
-
- Mensajes: 360
- Registrado: Mié Dic 03, 2008 5:05 am
ProgressBar y labels
On 2/4/2013 2:29 PM, Xevi wrote:
> Martin,
>
>
> ::oLabel1:lVisible := ::oLabel2:lVisible := ::oLblContador:lVisible
> := ::oCkboxlProces1a1:lChecked
> ::oProgressBar1:nValue := 0
> While .T.
> ::oBtnCancelar:SetFocus()
> If ::lCancelar
> Exit
> EndIf
> ProcessMessages()
>
> cLectura := FReadStr( nHandle, nLenData )
> If cLectura = Chr(26) .or. Empty( cLectura )
> ::oLblReferencia:cText := cRefe
> Exit
> EndIf
> *LOGDEBUG(CLECTURA)
> ::oProgressBar1:nValue ++
> ::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E
> 999,999" )
> If (AppData:lCitroen .and. Asc( Right( cLectura, 1 ) ) # 10) .or.;
> (!AppData:lCitroen .and. (::oProgressBar1:nValue <
> ::oProgressBar1:nMax .and. Asc( Right( cLectura, 1 ) ) # 10))
> xMsgDlg( ::aIdioma[19,AppData:nIdioma],
> ::aIdioma[16,AppData:nIdioma], mbOK,, IDI_ERROR )
> Exit
> EndIf
>
> cRefe := ""
> cRemp := ""
> If AppData:lCitroen
> For n:=2 to 14
> If SubStr( cLectura, n, 1 ) # " "
> cRefe += SubStr( cLectura, n, 1 )
> EndIf
> Next
> cRefe := PadR( cRefe, 13 )
>
> If ::oCkboxlProces1a1:lChecked //::oProgressBar1:nValue % 50 == 0
> ::oLblReferencia:cText := cRefe
> EndIf
> ...
>
>
> Un Saludo,
> Xevi.
>
>
>
> "Martin Del Angel" ha escrit al missatge:51100a67$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> On 2/1/2013 7:59 AM, Xevi wrote:
>> Bingen,
>>
>> a mi tampoco me "refresca" un label (por mas que fuerze
>> ProcessMessages())... en un bucle repetitivo y que muestro una
>> ProgressBar.
>>
>> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
>> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
>> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
>> REFRESCA!!!
>>
>> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
>> que hace ya un tiempo.
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>>
>> Buenas Xailer Team.
>>
>> Dado que las Progressbar que utilizamos no parecen admitir texto, he
>> decidido poner un label justo encima, pero éste ni se muestra ni se
>> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>>
>> Alguna idea?
>>
>> Gracias.
>
> Xevi:
>
> Puedes mostrar la fracción de código de programa donde muestras el Label !
>
> A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
>
> Quizas estamos hablando de cosas diferentes
>
>
> Saludos...
Xevi:
Agrega estas 2 lineas despues de
::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E 999,999" )
::oLblContador:Adjust()
::oLblContador:Update()
con eso debe de funcionar
Saludos...
> Martin,
>
>
> ::oLabel1:lVisible := ::oLabel2:lVisible := ::oLblContador:lVisible
> := ::oCkboxlProces1a1:lChecked
> ::oProgressBar1:nValue := 0
> While .T.
> ::oBtnCancelar:SetFocus()
> If ::lCancelar
> Exit
> EndIf
> ProcessMessages()
>
> cLectura := FReadStr( nHandle, nLenData )
> If cLectura = Chr(26) .or. Empty( cLectura )
> ::oLblReferencia:cText := cRefe
> Exit
> EndIf
> *LOGDEBUG(CLECTURA)
> ::oProgressBar1:nValue ++
> ::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E
> 999,999" )
> If (AppData:lCitroen .and. Asc( Right( cLectura, 1 ) ) # 10) .or.;
> (!AppData:lCitroen .and. (::oProgressBar1:nValue <
> ::oProgressBar1:nMax .and. Asc( Right( cLectura, 1 ) ) # 10))
> xMsgDlg( ::aIdioma[19,AppData:nIdioma],
> ::aIdioma[16,AppData:nIdioma], mbOK,, IDI_ERROR )
> Exit
> EndIf
>
> cRefe := ""
> cRemp := ""
> If AppData:lCitroen
> For n:=2 to 14
> If SubStr( cLectura, n, 1 ) # " "
> cRefe += SubStr( cLectura, n, 1 )
> EndIf
> Next
> cRefe := PadR( cRefe, 13 )
>
> If ::oCkboxlProces1a1:lChecked //::oProgressBar1:nValue % 50 == 0
> ::oLblReferencia:cText := cRefe
> EndIf
> ...
>
>
> Un Saludo,
> Xevi.
>
>
>
> "Martin Del Angel" ha escrit al missatge:51100a67$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> On 2/1/2013 7:59 AM, Xevi wrote:
>> Bingen,
>>
>> a mi tampoco me "refresca" un label (por mas que fuerze
>> ProcessMessages())... en un bucle repetitivo y que muestro una
>> ProgressBar.
>>
>> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
>> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
>> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
>> REFRESCA!!!
>>
>> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
>> que hace ya un tiempo.
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>>
>> Buenas Xailer Team.
>>
>> Dado que las Progressbar que utilizamos no parecen admitir texto, he
>> decidido poner un label justo encima, pero éste ni se muestra ni se
>> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>>
>> Alguna idea?
>>
>> Gracias.
>
> Xevi:
>
> Puedes mostrar la fracción de código de programa donde muestras el Label !
>
> A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
>
> Quizas estamos hablando de cosas diferentes
>
>
> Saludos...
Xevi:
Agrega estas 2 lineas despues de
::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E 999,999" )
::oLblContador:Adjust()
::oLblContador:Update()
con eso debe de funcionar
Saludos...
ProgressBar y labels
Martin,
Funcionó!!!
Gracias.
Un Saludo,
Xevi.
"Martin Del Angel" ha escrit al missatge:51102415$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
On 2/4/2013 2:29 PM, Xevi wrote:
> Martin,
>
>
> ::oLabel1:lVisible := ::oLabel2:lVisible := ::oLblContador:lVisible
> := ::oCkboxlProces1a1:lChecked
> ::oProgressBar1:nValue := 0
> While .T.
> ::oBtnCancelar:SetFocus()
> If ::lCancelar
> Exit
> EndIf
> ProcessMessages()
>
> cLectura := FReadStr( nHandle, nLenData )
> If cLectura = Chr(26) .or. Empty( cLectura )
> ::oLblReferencia:cText := cRefe
> Exit
> EndIf
> *LOGDEBUG(CLECTURA)
> ::oProgressBar1:nValue ++
> ::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E
> 999,999" )
> If (AppData:lCitroen .and. Asc( Right( cLectura, 1 ) ) # 10)
> .or.;
> (!AppData:lCitroen .and. (::oProgressBar1:nValue <
> ::oProgressBar1:nMax .and. Asc( Right( cLectura, 1 ) ) # 10))
> xMsgDlg( ::aIdioma[19,AppData:nIdioma],
> ::aIdioma[16,AppData:nIdioma], mbOK,, IDI_ERROR )
> Exit
> EndIf
>
> cRefe := ""
> cRemp := ""
> If AppData:lCitroen
> For n:=2 to 14
> If SubStr( cLectura, n, 1 ) # " "
> cRefe += SubStr( cLectura, n, 1 )
> EndIf
> Next
> cRefe := PadR( cRefe, 13 )
>
> If ::oCkboxlProces1a1:lChecked //::oProgressBar1:nValue % 50 == 0
> ::oLblReferencia:cText := cRefe
> EndIf
> ...
>
>
> Un Saludo,
> Xevi.
>
>
>
> "Martin Del Angel" ha escrit al missatge:51100a67$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> On 2/1/2013 7:59 AM, Xevi wrote:
>> Bingen,
>>
>> a mi tampoco me "refresca" un label (por mas que fuerze
>> ProcessMessages())... en un bucle repetitivo y que muestro una
>> ProgressBar.
>>
>> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
>> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
>> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
>> REFRESCA!!!
>>
>> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
>> que hace ya un tiempo.
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>>
>> Buenas Xailer Team.
>>
>> Dado que las Progressbar que utilizamos no parecen admitir texto, he
>> decidido poner un label justo encima, pero éste ni se muestra ni se
>> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>>
>> Alguna idea?
>>
>> Gracias.
>
> Xevi:
>
> Puedes mostrar la fracción de código de programa donde muestras el Label !
>
> A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
>
> Quizas estamos hablando de cosas diferentes
>
>
> Saludos...
Xevi:
Agrega estas 2 lineas despues de
::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E 999,999" )
::oLblContador:Adjust()
::oLblContador:Update()
con eso debe de funcionar
Saludos...
Funcionó!!!
Gracias.
Un Saludo,
Xevi.
"Martin Del Angel" ha escrit al missatge:51102415$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
On 2/4/2013 2:29 PM, Xevi wrote:
> Martin,
>
>
> ::oLabel1:lVisible := ::oLabel2:lVisible := ::oLblContador:lVisible
> := ::oCkboxlProces1a1:lChecked
> ::oProgressBar1:nValue := 0
> While .T.
> ::oBtnCancelar:SetFocus()
> If ::lCancelar
> Exit
> EndIf
> ProcessMessages()
>
> cLectura := FReadStr( nHandle, nLenData )
> If cLectura = Chr(26) .or. Empty( cLectura )
> ::oLblReferencia:cText := cRefe
> Exit
> EndIf
> *LOGDEBUG(CLECTURA)
> ::oProgressBar1:nValue ++
> ::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E
> 999,999" )
> If (AppData:lCitroen .and. Asc( Right( cLectura, 1 ) ) # 10)
> .or.;
> (!AppData:lCitroen .and. (::oProgressBar1:nValue <
> ::oProgressBar1:nMax .and. Asc( Right( cLectura, 1 ) ) # 10))
> xMsgDlg( ::aIdioma[19,AppData:nIdioma],
> ::aIdioma[16,AppData:nIdioma], mbOK,, IDI_ERROR )
> Exit
> EndIf
>
> cRefe := ""
> cRemp := ""
> If AppData:lCitroen
> For n:=2 to 14
> If SubStr( cLectura, n, 1 ) # " "
> cRefe += SubStr( cLectura, n, 1 )
> EndIf
> Next
> cRefe := PadR( cRefe, 13 )
>
> If ::oCkboxlProces1a1:lChecked //::oProgressBar1:nValue % 50 == 0
> ::oLblReferencia:cText := cRefe
> EndIf
> ...
>
>
> Un Saludo,
> Xevi.
>
>
>
> "Martin Del Angel" ha escrit al missatge:51100a67$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> On 2/1/2013 7:59 AM, Xevi wrote:
>> Bingen,
>>
>> a mi tampoco me "refresca" un label (por mas que fuerze
>> ProcessMessages())... en un bucle repetitivo y que muestro una
>> ProgressBar.
>>
>> Lo que hago, es utilizar un TEdit con lBorder .F., lEnabled .F.,
>> nClrPaneDisabled clBtnFace, nClrTextDisabled clWindowText
>> Vaya, que utilizo un TEdit de Label... y la misma rutina SI QUE SE
>> REFRESCA!!!
>>
>> No se en que actualización/revisión de Xailer dejó de funcionar, pero se
>> que hace ya un tiempo.
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Bingen Ugaldebere" ha escrit al missatge:510bb9a0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>>
>> Buenas Xailer Team.
>>
>> Dado que las Progressbar que utilizamos no parecen admitir texto, he
>> decidido poner un label justo encima, pero éste ni se muestra ni se
>> actualiza, haga un refresh sleep(x) ni nada por el estilo.
>>
>> Alguna idea?
>>
>> Gracias.
>
> Xevi:
>
> Puedes mostrar la fracción de código de programa donde muestras el Label !
>
> A mi siempre me ha refrescado el Label en todas las versiones de Xailer.
>
> Quizas estamos hablando de cosas diferentes
>
>
> Saludos...
Xevi:
Agrega estas 2 lineas despues de
::oLblContador:cText := Transform( ::oProgressBar1:nValue, "@E 999,999" )
::oLblContador:Adjust()
::oLblContador:Update()
con eso debe de funcionar
Saludos...
Un Saludo,
Xevi.
Xevi.