Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-05-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.572
Poder: 27
egostar Va camino a la fama
Hola

No dudo que los componentes JEDI sean muy buenos, pero esto se puede hacer con los Edit normales de Delphi, digo yo "pa" que entonces es la POO .

Coincido con [Caro] al decir que se inicialicen todos los Edit a cero y se genere el evento OnKeyPress con lo siguiente:

Código Delphi [-]
procedure TGerencia_Reg.Edit1KeyPress(Sender: TObject; var Key: Char);
 begin
  if not (key in ['0'..'9',#8]) then key:=#0;
end;

Depués generar el evento OnChange en cualquier Edit de este forma:

Código Delphi [-]
procedure TGerencia_Reg.Edit1Change(Sender: TObject);
begin
   if ( (Sender as TEdit).text = '') or (Sender as TEdit).text = ' ') ) then
        (Sender as TEdit).text := '0';
end;

Finalmente seleccionas los 323 Edit's restantes y le asignas los mismos eventos a todos.

Así de fácil te la pone nuestra herramienta Delphi

Intentalo y veras lo bonito que queda

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #2  
Antiguo 15-05-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
Cita:
Empezado por egostar Ver Mensaje
Hola

No dudo que los componentes JEDI sean muy buenos, pero esto se puede hacer con los Edit normales de Delphi, digo yo "pa" que entonces es la POO
Solo que con el Edit, luego tendrías que validar que sean puros números, que no tengan caracteres extraños, que no se pueda copiar y pegar cosas raras en ellos, que mantengan el formato numérico adecuado, que si la coma es un separador de miles, que lo puedan escribir más de una vez, pero si es separador de decimales, se pueda poner solo una vez, o en su caso el punto. Tendrías que hacer conversiones en caso de querer realizar operaciones y / o asignaciones, en fin, que habría que codificar una infinidad de cosas.

Si me preguntas que opción escogería:

1. Asignar dos o tres propiedades
2. Codificar y preparar un Edit para validar infinidad de situaciones.

Escogería la primera. Y seguiría una de mis principales guías de programación:
Controla todo lo que puedas controlar con los controles.


De cualquier manera, si estas utilizando 324 controles (el que sea) en un mismo proceso o procedimiento, seguro tienes un problema de diseño bastante gordo.
__________________


Última edición por ContraVeneno fecha: 15-05-2008 a las 22:53:06.
Responder Con Cita
  #3  
Antiguo 15-05-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.572
Poder: 27
egostar Va camino a la fama
Cita:
Empezado por ContraVeneno Ver Mensaje
Solo que con el Edit, luego tendrías que validar que sean puros números, que no tengan caracteres extraños, que no se pueda copiar y pegar cosas raras en ellos, que mantengan el formato numérico adecuado, que si la coma es un separador de miles, que lo puedan escribir más de una vez, pero si es separador de decimales, se pueda poner solo una vez, o en su caso el punto. Tendrías que hacer conversiones en caso de querer realizar operaciones y / o asignaciones, en fin, que habría que codificar una infinidad de cosas.
A ver amigo ContraVeneno, te invito a que pongas 3 Edit's normalitos y hagas lo que he propuesto, comentame que es lo que pasa si copias y pegas cosas raras, caracteres especiales.

Lo del formato de números no le veo problema, por ahi ronda un código de nuestro amigo [cHackAll] que hace precisamente eso y es solo de incluirlo en un solo evento.

Cita:
Empezado por ContraVeneno Ver Mensaje
Si me preguntas que opción escogería:

1. Asignar dos o tres propiedades
2. Codificar y preparar un Edit para validar infinidad de situaciones.

Escogería la primera. Y seguiría una de mis principales guías de programación:
Controla todo lo que puedas controlar con los controles.
Pues es cuestión de gustos amigo Contra, nada personal, digo, no se vaya a generar un debate a muerte por esto

Cita:
Empezado por ContraVeneno Ver Mensaje
De cualquier manera, si estas utilizando 324 controles (el que sea) en un mismo proceso o procedimiento, seguro tienes un problema de diseño bastante gordo.
Bueno, habría que ver que es lo que está haciendo, cosa que no nos ha comentado, de entrada coincido contigo hasta que se nos comente la funcionalidad y el porqué de todos esos Edit's.

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #4  
Antiguo 19-05-2008
axlrafael axlrafael is offline
Miembro
 
Registrado: abr 2008
Posts: 36
Poder: 0
axlrafael Va por buen camino
Hola amigos y perdon por generar toda discusión, miren utilizo esta cantidad de TEdit's por que en mi aplicación asi lo requiere, el usuario captura cada dato correspondiente a un grupo determinado de grupo de articulos, esto con el fin de llevar un control de inventario anual estimado, y puse 324 porque son 29 grupos de articulos por 12 meses que representa todo el año, y no puedo dejar edit's en blanco porque me saldria error porque puse en el evento OnChange que me reflejara la sumatoria de cada grupo de articulos, y pues como los TLabels son de tipo String al igual que los edit's tengo que hacer la conversion de tipo String a Integer y un valor nulo no es un valor entero.

Saludos y muchas gracias por sus comentarios
Responder Con Cita
  #5  
Antiguo 19-05-2008
axlrafael axlrafael is offline
Miembro
 
Registrado: abr 2008
Posts: 36
Poder: 0
axlrafael Va por buen camino
Por cierto amigo egostar tengo que agradecerte por tu comentario, la verdad tu código me sirvio a la perfección, te debo una

Gracias
Responder Con Cita
  #6  
Antiguo 19-05-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
Yo hubiera utilizado un TjvDBGrid enlazado a un TjvMemoryData... pero en fin.
__________________

Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como crear un bucle con TEdit's axlrafael OOP 12 08-05-2008 19:22:48
Pasar demas datos de un DBGRID a TEDIT's Ericato Varios 5 09-03-2007 17:44:05
cambiar campo null a not null andressanchez Firebird e Interbase 8 18-09-2006 22:00:09
Como valido un null?? jbetancurt Firebird e Interbase 2 11-11-2004 16:19:39
Como puedo grabar un NULL en la BD? furniman Varios 2 23-03-2004 11:36:36


La franja horaria es GMT +2. Ahora son las 04:07:09.


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