Agosto 13, 2008
¿Cómo puedo enviar un E-Mail desde Delphi usando el cliente de correo electrónico por defecto instalado en tu pc (Outlook por ejemplo) si no tengo un navegador instalado?, pues es muy sencillo, utilizando un TMemo generamos el siguiente código:
uses
ShellAPI, Windows;
...
ShellExecute(0, 'open', PChar('mailto:bugreports@youremail.com?subject=
Bug%20Report&Body=' + MemoBugText.Text),
nil, nil, SW_SHOWNORMAL);
Saludos.
1 comentario |
Códigos y Trucos, Delphi | Etiquetado: Códigos y Trucos, Delphi |
Permalink
Escrito por enecumene
Agosto 13, 2008
Hola amigos, en esta entrada les voy a tratar acerca de una función que encontré en la red cuya objetivo es determinar a cual signo zodiacal pertenece determinada fecha, la función se llama “ZodiacSign” :
function ZodiacSign(const dateOfBirth: TDate): string;
type
TZodiacSign = record
Name : string;
Day : integer;
end;
const
ZodiacSigns : array[1..12] of TZodiacSign =
(
(Name : ‘Acuario’; Day : 50), // Termina el 02/19
(Name : ‘Piscis’; Day : 79), // Termina el 03/20
(Name : ‘Aries’; Day : 110), // Termina el 04/20
(Name : ‘Tauro’; Day : 131), // Termina el 05/21
(Name : ‘Gemini’; Day : 172), // Termina el 06/21
(Name : ‘Cancer’; Day : 203), // Termina el 07/22
(Name : ‘Leo’; Day : 233), // Termina el 08/21
(Name : ‘Virgo’; Day : 266), // Termina el 09/23
(Name : ‘Libra’; Day : 296), // Termina el 10/23
(Name : ‘Scorpio’; Day : 326), // Termina el 11/22
(Name : ‘Sagittarios’; Day : 357), // Termina el 12/22
(Name : ‘Capricornio’; Day : 385) // Termina el 01/20
) ;
var
d : word;
idx : integer;
begin
d := DayOfTheYear(dateOfBirth) ;
if (d > 59) AND IsLeapYear(YearOf(dateOfBirth)) then Inc(d) ;
if (d < 21) then d := d + DaysInYear(dateOfBirth) ;
for idx := 1 to 12 do
begin
if d <= ZodiacSigns[idx].Day then
begin
result := ZodiacSigns[idx].Name;
exit;
end;
end;
end; (*ZodiacSign*)
A continuación pongo un ejemplo de como se usa:
var
dob : TDateTime;
begin
dob := EncodeDate(1973, 1, 29) ;
//Debe retornar Acuario
ShowMessage(ZodiacSign(dob)) ;
end;
Espero la disfruten,
Saludos
Deja un Comentario » |
Códigos y Trucos | Etiquetado: Delphi, Trucos |
Permalink
Escrito por enecumene
Agosto 13, 2008
Aquí os dejo un excelentissimo tutorial sobre la creación de un webservice con Delphi realizado por Eliseo González (Egostar) miembro del Club Delphi, para verlo sólo tienes que visitar al siguiente link de su blog:
http://eliseogn.wordpress.com/2008/08/02/6/
Saludos.
Deja un Comentario » |
Webservice | Etiquetado: Club Delphi, Delphi, Webservices |
Permalink
Escrito por enecumene
Agosto 13, 2008
Este truco sólo sirve para windows XP, aquí enseñaré cómo asignar el fondo de escritorio de tu windows desde tu aplicativo, vamos a crear un procedimiento llamada “Asignarfondo()”, con ella tendremos la capacidad de establecer la posición exacta del papel tapiz y la capacidad de cambiar el tamaño de la imagen de fondo para la pantalla, a continuación el código:
uses
Registry, WinProcs, SysUtils;
const
// WallPaperStyles
WPS_Tile = 0;
WPS_Center = 1;
WPS_SizeToFit = 2;
WPS_XY = 3;
//
// sWallpaperBMPPath
// - Ruta de la imagen
//
// nStyle
// - cualquiera de WallPaperStyles
//
// nX, nY
// - son los nStyle establecidos en WPS_XY,
// nX y nY pueden ser usados para establecer
// la posición exacta del papel tapiz
//
procedure Asignarfondo(
sWallpaperBMPPath : string;
nStyle,
nX, nY : integer );
var
reg : TRegIniFile;
s1 : string;
X, Y : integer;
begin
//
// cambiar registro
//
// HKEY_CURRENT_USER\
// Control Panel\Desktop
// TileWallpaper (REG_SZ)
// Wallpaper (REG_SZ)
// WallpaperStyle (REG_SZ)
// WallpaperOriginX (REG_SZ)
// WallpaperOriginY (REG_SZ)
//
reg := TRegIniFile.Create(
'Control Panel\Desktop' );
with reg do
begin
s1 := '0';
X := 0;
Y := 0;
case nStyle of
WPS_Tile : s1 := '1';
WPS_Center: nStyle := WPS_Tile;
WPS_XY :
begin
nStyle := WPS_Tile;
X := nX;
Y := nY;
end;
end;
WriteString( '',
'Wallpaper',
sWallpaperBMPPath );
WriteString( '',
'TileWallpaper',
s1 );
WriteString( '',
'WallpaperStyle',
IntToStr( nStyle ) );
WriteString( '',
'WallpaperOriginX',
IntToStr( X ) );
WriteString( '',
'WallpaperOriginY',
IntToStr( Y ) );
end;
reg.Free;
//
// deje que todos sepan que hemos cambiado
// un sistema de parámetros
//
SystemParametersInfo(
SPI_SETDESKWALLPAPER,
0,
Nil,
SPIF_SENDWININICHANGE );
end;
Hay dos formas de llamar esa función:
// establecer el fondo a winnt.bmp y
// el tramo para que se adapte a la pantalla
Asignarfondo(
'c:\winnt\winnt.bmp',
WPS_SizeToFit, 0, 0 );
// establecer el origen del papel
// a (10, 200)
Asignarfondo(
'c:\winnt\winnt.bmp',
WPS_XY, 10, 200 );
Hasta ahora sólo he podido hacer funcionar con archivos .BMP, cualquier ayuda le será agradecido. Espero que la puedan disfrutar
Saludos.
Link relacionados:
http://www.delphiaccess.com/forum/index.php?topic=101.0;topicseen
2 comentarios |
Códigos y Trucos | Etiquetado: códigos, Delphi, Trucos |
Permalink
Escrito por enecumene