Buenas Xailer team.
Hasta ahora en las progressbar he usado mucho una sobregarga para pintar un texto dentro que indique por ejemplo el progreso: "Procesando registro 1 de 200"
He intentado aplicar la misma sobrecarga a la Progress bar moderna pero aunque no da error, ni la pinta ni hace nada de nada, no se que puede estar mal.
Una manita por favor, gracias.
//-----------------------------------------------------------------------------------------------------------------
Class TProgressBarMod From XProgressBarMOd
PROPERTY cText INIT "" //Texto a mostrar.
//Si se quiere usar numerador junto con un texto "Procesando registro %1 de %2"
//Si solo se quiere ver el porcentaje indicar como texto "%"
PROPERTY nClrText INIT clWindowText EDITOR PE_Color
METHOD WMPaint()
EndClass
//-----------------------------------------------------------------------------------------------------------------
// Sobrecarga a ProgressBar para que pueda contener un texto y opcionalmente un indice de progreso y un total
METHOD WMPaint( hDC ) CLASS TProgressBarMod
LOCAL cText
hDC := ::BeginPaint( hDC )
PrevWindowProc( ::Handle, WM_PAINT, hDC, 0 )
IF !Empty( ::cText )
If ::cText=="%"
cText:= ToString(Int(::nValue/::nMax*100))+" %"
Else
cText := StrTran( ::cText, "%1", AllTrim( ToString( ::nValue ) ) )
cText := StrTran( cText, "%2", AllTrim( ToString( ::nMax ) ) )
Endif
SetBkMode( hDC, TRANSPARENT )
SetTextColor( hDC, ::nClrText )
DrawText( hDC, cText, GetClientRect( ::Handle ), nOR( DT_CENTER, DT_VCENTER, DT_SINGLELINE ) )
ENDIF
::Super:WmPaint()
RETURN ::EndPaint( hDC )
//==============================================================================
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.
Añadir texto a tProgressBarMod
Añadir texto a tProgressBarMod
BiSoft Desarrollo de software profesional
http://www.bisoft.es
http://www.bisoft.es
Re: Añadir texto a tProgressBarMod
Por cierto si pulsamos botón derecho en una ProgressBar para convertirla en una ProgressBarMOD lo hace pero a la contra no hace nada, curioso.
BiSoft Desarrollo de software profesional
http://www.bisoft.es
http://www.bisoft.es
- ignacio
- Site Admin
- Mensajes: 9121
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Añadir texto a tProgressBarMod
Usa el evento OnPainted
Saludos
Saludos
- ignacio
- Site Admin
- Mensajes: 9121
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Añadir texto a tProgressBarMod
Corregido. Gracias