[Lazarus-es] Funci?n para convertir n?mero a cadena
JoshyFun
joshyfun en gmail.com
Jue Dic 10 00:51:17 CET 2009
Hello Ismael,
Wednesday, December 9, 2009, 11:41:14 PM, you wrote:
ILDGa> UTF8 to ANSI -> Operaciones -> ANSI to UTF8 -> salida
ILDGa> 1 Millón de Gracias Reiteradas
Me alegro mucho :)
ILDGa> Sigo pendiente de como saber si una caja de texto o mejor dicho un TMaskEdit
ILDGa> tiene un valor fecha verdadero o no. Veré como lo soluciono.
Para saber si una fecha es válida simplemente intenta convertirla a
fecha:
var
Fecha: TDateTime;
begin
if not TryStrToDate(txtMaskEdit.Text,Fecha) then begin
Fecha:=0;
end;
end;
Necesitarás el "DateUtil" en el uses.
ILDGa> Otra cosa existe una forma de saber el primer y último día de un mes, algo
ILDGa> así como las siguientes funciones en Visual Basic
ILDGa> DateSerial(2009, 12, 1) = 01/12/2009
ILDGa> DateSerial(2009, 13, 0) = 31/12/2009
DateSerial no recuerdo que hacía, lo siento... pero para operar con
fechas tienes varias funciones. Por ejemplo para saber el primer y
último dia da un mes:
var
TestDate: TDateTime;
DiaPrimero:TDateTime;
DiaUltimo: TDateTime;
Y,M,D: integer;
begin
TestDate:=EncodeDateTime(2009,12,10,0,0,0,0);
//Si queremos "hoy" pues...
TestDate:=Now;
//Descomponemos la fecha...
DecodeDate(TestDate,Y,M,D);
//Restamos el dia del mes y sumamos 1 (10 - 10 + 1)
DiaPrimero:=IncDays(TestDate,(D*-1)+1);
//Sumamos un mes a DiaPrimero, lo que nos dará el
//primer dia del mes siguiente y le restamos 1.
DiaUltimo:=IncDay(IncMonth(DiaPrimero),-1);
end;
Esto es una ilustración de lo que se puede hacer, aunque un poco
enrevesada, más fácil y directo sería:
//Descomponemos la fecha...
DecodeDate(TestDate,Y,M,D);
DiaPrimero:=EncodeDate(Y,M,1);
DiaUltimo:=EndOfMonth(Y,M);
Para este tipo de operaciones tienes IncYear, IncMonth, IncDay,
incHour, incMinute, IncSecond, etc... o cosas como DayOfWeek(),
DayOfYear, DayOfTheMonth, SecondsBetween, SecondsSpan, DaysBetween,
YearsBetween, CompareDate, CompareDateTime, DateTimeToUnix,
EndOfAMonth, etc... Lo que puedes hacer es abrir la unit
"DateUtil.pas" y ver la cantidad de funciones que hay para trabajar
con fechas. O si lo prefieres dispongo de unos .CHM que son los
manuales de freepascal y lazarus para poder ser visionados con el
explorer o similar, pero pesan bastante, unos 12 MB.
--
Best regards,
JoshyFun
More information about the Lazarus-es
mailing list