Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-05-2014
Jrodfer89 Jrodfer89 is offline
Registrado
NULL
 
Registrado: may 2014
Posts: 3
Poder: 0
Jrodfer89 Va por buen camino
Agenda Delphi

Hola amigos,
miren estoy trabajando para hacer una agenda en delphi en base de datos, me gustaria saber la formula para los botones:

(cuando le doy por ejemplo a la letra A, me aparezcan solo las personas cuyo apellido 1 empieze por A)
(cuando le doy por ejemplo a la letra B, me aparezcan solo las personas cuyo apellido 1 empieze por B)
(cuando le doy por ejemplo a la letra C, me aparezcan solo las personas cuyo apellido 1 empieze por C)

y asi sucesibamente hasta la letra Z
Imágenes Adjuntas
Tipo de Archivo: pdf agenda.pdf (60,3 KB, 17 visitas)
Responder Con Cita
  #2  
Antiguo 20-05-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Jrodfer89, bienvenido a Club Delphi.

No mencionas con que componente te estas conectando a la bd, pero por el ícono que aparece en la imágen de tu adjunto pareciera que se trata de un TTable .

Con él podrías hacer:
Código Delphi [-]
...
implementation

var
  Filtro: Char;

// Este evento debes asignarlo a todos los botones
procedure TForm1.SpeedButtonsClick(Sender: TObject);
begin
  Filtro:= (Sender as TSpeedButton).Caption[1]; //(*)
  Table1.Filtered:= False;
  Table1.Filtered:= True;
end;

procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
  Accept:= UpCase(Table1.FieldByName('COGNOM1').AsString[1]) = UpCase(Filtro);
end;
En la imágen también pareciera que se tratan de TSpeedButton, de no ser así reemplazá el moldeo en la línea (*) por la clase correspondiente (TButton, TBitBtn, ...).

Por último y como es costumbre con los nuevos miembros, te invitamos a que leas nuestra guía de estilo.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 20-05-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.448
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Jrodfer89 Ver Mensaje
Hola amigos,
miren estoy trabajando para hacer una agenda en delphi en base de datos, me gustaria saber la formula para los botones:

(cuando le doy por ejemplo a la letra A, me aparezcan solo las personas cuyo apellido 1 empieze por A)
(cuando le doy por ejemplo a la letra B, me aparezcan solo las personas cuyo apellido 1 empieze por B)
(cuando le doy por ejemplo a la letra C, me aparezcan solo las personas cuyo apellido 1 empieze por C)

y asi sucesibamente hasta la letra Z
Pues lo suyo sería realizar una consulta para que te filtre los registros que cumplan esa condición.
Algo así como:

Código SQL [-]
SELECT * FROM AGENDA WHERE NOMBRE LIKE 'A%'
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 22-05-2014
Jrodfer89 Jrodfer89 is offline
Registrado
NULL
 
Registrado: may 2014
Posts: 3
Poder: 0
Jrodfer89 Va por buen camino
Smile

Hola de nuevo,
los botones son TBitBtn y en el codigo he puesto esto:
procedure TForm1.BaClick(Sender: TObject);
begin
Filtro:= (Sender as TBitBtn).Caption[1];
Table1.Filtered:= False;
Table1.Filtered:= True;
end;

Ahora solo me falta poner este codigo, pero no se en donde va puesto
procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
Accept:= UpCase(Table1.FieldByName('COGNOM1').AsString[1]) = UpCase(Filtro);
end;

muchas gracias
Responder Con Cita
  #5  
Antiguo 22-05-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Jrodfer89.
Cita:
... pero no se en donde va puesto...
Hacé click sobre el componente TDataSet que estes usando (TTable, TADOTable, etc) de modo que quede seleccionado. Desde el Object Inspector (si está oculto presiona F11) hace click sobre la pestaña Events y luego doble click sobre el evento OnFilterRecord, Delphi automáticamente te armará el cuerpo de la función así:
Código Delphi [-]
procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
   
end;
Luego copia y pega la línea:
Código Delphi [-]
  Accept:= UpCase(Table1.FieldByName('COGNOM1').AsString[1]) = UpCase(Filtro);
ente el begin ~ end y listo.

Cuando incluyas código en tus mensajes recorda usar los TAG's:


Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 27-05-2014
Jrodfer89 Jrodfer89 is offline
Registrado
NULL
 
Registrado: may 2014
Posts: 3
Poder: 0
Jrodfer89 Va por buen camino
Ya casi por terminar, me gustaria saber como hacer para que dentro del mismo programa, abrir una ventana que incluyera un codigo para que me buscara a la persona que yo quisiera.



Ejemplo: (Dentro del programa) --> Tener una pestaña que me dijese [buscar persona]
(codigo para esta pestaña)
Responder Con Cita
  #7  
Antiguo 27-05-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Jrodfer89.

Una opción es usar el componente TPageControl: TPageControl - Delphi Usage Examples, Tips and Tricks

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



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
Agenda en delphi rafael_Delgado OOP 4 28-07-2008 08:37:16
Agenda SG'07 Ginger Noticias 2 07-08-2007 20:36:32
Agenda luxus Conexión con bases de datos 3 01-08-2007 18:36:58
Agenda santiago14 Varios 2 26-03-2007 11:35:06
Crear Agenda con componentes standard de Delphi FNADALO Varios 3 26-07-2004 13:04:53


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


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