18 de enero de 2010

Saber cuantos decimales tiene un número

Con esta función podemos saber la cantidad de decimales de un número pasado como parámetro.

? CuantosDecimales(1234.567) 
? CuantosDecimales(1234.500) 
? CuantosDecimales(9.999999) 

FUNCTION CuantosDecimales(tn) 
  LOCAL ln
  ln = 0 
  DO WHILE .T. 
    IF INT(tn * 10 ^ ln) == tn * 10 ^ ln 
      EXIT 
    ENDIF 
    ln = ln + 1 
  ENDDO 
  RETURN ln 
ENDFUNC 

Nota: La función solo soporta hasta 16 decimales

Luis María Guayán

9 de enero de 2010

Poner la imagen del papel tapiz de Windows como fondo de un formulario

Una forma fácil de poner la misma imagen del papel tapiz de Windows como fondo de un formulario.

Para ello leemos el valor de la Registry: HKCU\Control Panel\Desktop\Wallpaper con WSH (Windows Script Host)

Ejemplo:
LOCAL loForm, loWsh, lcWallpaper

loWsh = CreateObject("wscript.shell")  
lcWallpaper = loWsh.RegRead("HKCU\Control Panel\Desktop\Wallpaper")
loWsh = Null

loForm = CREATEOBJECT("Form")
loForm.WIDTH = 800
loForm.HEIGHT = 600
loForm.AUTOCENTER = .T.
loForm.PICTURE = lcWallpaper
loForm.SHOW(1)
loForm = Null

RETURN

Luis María Guayán

1 de enero de 2010

Visual FoxPro 9.0 EULA (End-User License Agreement)

Contrato de Licencia con el Usuario Final de Visual FoxPro 9.0

LICENSE TERMS FOR MICROSOFT SOFTWARE

MICROSOFT VISUAL FOXPRO VERSION 9.0

THESE LICENSE TERMS ARE AN AGREEMENT BETWEEN MICROSOFT CORPORATION (OR, IF APPLICABLE BASED ON WHERE YOU ACQUIRED THE SOFTWARE, ONE OF ITS AFFILIATES) AND YOU.  PLEASE READ THEM.  THEY APPLY TO THE SOFTWARE NAMED ABOVE WHICH INCLUDES THE MEDIA ON WHICH YOU RECEIVED IT, IF ANY.  THE TERMS ALSO APPLY TO THE MICROSOFT:

* UPDATES, 
* SUPPLEMENTS,
* INTERNET-BASED SERVICES, AND
* SUPPORT SERVICES,

FOR THIS SOFTWARE UNLESS OTHER TERMS ACCOMPANY THOSE ITEMS.  IF SO, THOSE TERMS APPLY.