Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   como agrego '/' a un tedit?? (https://www.clubdelphi.com/foros/showthread.php?t=35583)

roman 21-09-2006 17:03:04

Cita:

Empezado por HySTD
si Fingolfinmx tiene restriccion a la hora de usar componentes (se tiene que adaptar), pues tendremos que recurrir a la solucion que he dicho anteriormente

Pues hombre, claro que si se tiene tal restricción (y me cuesta trabajo pensar porque podría tenerla) no queda de otra que codificarlo uno mismo. Pero parte de la ayuda que se puede ofrecer a alguien es el sugerirle opciones que posiblemente no haya contemplado previamente.

// Saludos

Fingolfinmx 21-09-2006 18:47:20

veo que e generado un poco de polemica... :) lo cual siempre es bueno, lo unico que necesitaba saber era la pregunta original, todo lo demas estaba resuelto. mi codigo queda asi al final de cuentas :


procedure Tfrmcaptura.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
contador:=contador+1;
if contador =7 then
begin
Perform(WM_NEXTDLGCTL, 0, 0);
contador:=1;
end
else
Begin
if ((contador mod 2)=0) and (contador>2) then begin
Edit1.Text:=Edit1.Text+'/';
Edit1.SelStart:=Length(Edit1.Text);
end;
end;
begin
if key=#13 then//Si presiona enter
BEGIN
numero:=edit1.text;
if ValidaFecha(numero) then
Perform(WM_NEXTDLGCTL, 0, 0)
else
begin
ShowMessage('La Fecha esta incompleta, debe contener 6 numeros');
edit1.text:='';
contador:=1;
end;
End;
if key=#32 then //Para Poder presionar Barra Espaciadora
else
if key=#8 then //Para Poder presionar Backspace (Borrar)
else
If not (key in ['0'..'9']) then
key:=#0;
end;
end;

// FUNCION PARA VALIDAR LA FECHA
function ValidaFecha(Numero:string):boolean;
var
rango :string;
i : integer;
begin
rango:='';
for i:=1 to Length(Numero) do
if Numero[i] in ['0'..'9'] then rango:=rango+Numero[i];
{Si no tiene 6 digitos, no es válido}
if (Length(rango)=6) then
Result:=True
else Result:=FALSE;
end;

// POR SI A ALGUIEN SE LE OCURRE VOLVER A CAPTURAR LA FECHA
procedure Tfrmcaptura.Edit1Click(Sender: TObject);
begin
edit1.text:='';
contador:=1;
end;

bueno... que les parece?? todo lo deduje leyendo sus diversos "posts". y la verdad me empieza a agradar bastante Delphi, gracias a personas como ustedes

Saludos :)

Fingolfinmx 21-09-2006 19:20:13

Lado Positivo...
 
HySTD tiene mucha razon, por ke mi inquietud era hacer ese codigo en especial usando un Tedit. por otro lado nunca pregunte que cual era la manera mas facil de hacerlo (aunque nunca imagine que existiera MaskEdit). y veanlo del lado positivo, con preguntas tan extrañas como la mia lo unico que se logra es mantener nuestro lado analitico despierto y la logica de cada quien funcionando.

Apasionense defendiendo su punto de vista, pero no caigan en el error de hacer creer a los demas que Ustedes tienen la razon en la manera personal de resolver problemas, que alfin y al cabo para eso nos pagan(Aunque a mi no :mad: ). ES POR ESO NADIE ENTIENDE A LAS PERSONAS INVOLUCRADAS EN SISTEMAS !!!! :rolleyes:

ARRIBA LOS SISTEMAS!!!! :)

Gracias por sus comentarios.

ContraVeneno 21-09-2006 19:28:51

Considerando la relación costo/beneficio, sigo sin sen ver motivos suficientes para no usar un DTPicker.

roman 21-09-2006 19:31:16

Cita:

Empezado por Fingolfinmx
pero no caigan en el error de hacer creer a los demas que Ustedes tienen la razon en la manera personal de resolver problemas

Tienes razón. En lo sucesivo me abstendré de sugerirte nada.

Hasta luego.

Fingolfinmx 21-09-2006 19:48:09

Tengo Razon??....
 
Cita:

Empezado por roman
Tienes razón.

Si entonces para ti tengo razon por que tu decision de no volver a sugerirme nada en el futuro, si desde un principio, utilize el MaskEdit y estuve utilizando sus consejos para resolver mi problema.

no te lo tomes a mal, no intento entrar en conflicto con nadie, solo es critica constructiva, no ofendo a nadie, y si lo hago, que me lo haga saber, para retractarme inmediatamente.

egostar 21-09-2006 20:34:36

Cita:

Empezado por Fingolfinmx
Apasionense defendiendo su punto de vista, pero no caigan en el error de hacer creer a los demas que Ustedes tienen la razon en la manera personal de resolver problemas, que al fin y al cabo para eso nos pagan(Aunque a mi no :mad: ). ES POR ESO NADIE ENTIENDE A LAS PERSONAS INVOLUCRADAS EN SISTEMAS !!!! :rolleyes:

No pude evitar involucrarme en este asunto, pero el fragmento que resalto no es otra cosa que darte una solución en base a la experiencia que se tiene, si eres un poco observador verás que Roman tiene mas de 8,700 mensajes y sus contestaciones "siempre" son atinadas y esto no lo digo solo yo, puedes darte una vuelta en sus perfil y ver sus respuestas.

Por otro lado si consideras que darte opciones es hacerte creer que se tiene la verdad absoluta, pues que te puedo decir, es como un llamado a misa, el que quiere va y el que no NO.

Y te regreso lo mismo que tu comentas, no lo tomes a mal, pero tratar de inventar el hilo negro no es la mejor opción, no se si lo que estas haciendo es personal pero si es un proyecto comercial y te aferras a usar Tedit (por el motivo que quieras y mandes) estas desaprovechando el tiempo y tus recursos. Yo no correría ese riesgo, disculpame.

Saludos


La franja horaria es GMT +2. Ahora son las 06:16:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi