Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Contar cuantos edits hay (https://www.clubdelphi.com/foros/showthread.php?t=48676)

lbidi 01-10-2007 22:26:03

Contar cuantos edits hay
 
Hola, amigos.
Necesito crear una consulta sql sobre varios campos edits, ingresados por el usuario, pero no todos o ninguno pueden tener valor.
O sea, necesito cuando edits con valor hay, para asi agregar el "and" en la consulta sql. Me explico??

Gracias

dec 01-10-2007 22:42:26

Hola,

Más que contarlos, pareciera que lo que necesitas es saber si un determinado "Edit" tiene algún valor o no. Vamos, eso me parece así, a bote pronto. Si quieres puedes buscar información en los foros sobre el método "CountrolCount()" conque cuentan los componentes (que descienden de "TWinControl").

En todo caso algo parecido a esto podría llevarse a cabo:

Código Delphi [-]
function TotalControls(container: TWinControl;
 classType: TClass) : integer;
var
  i: integer;
begin
  result := 0;
  for i := 0 to container.ControlCount-1 do begin
    if (container.Controls[i] is classType) then
      Inc(result);
  end;
end;

procedure TForm2.Button1Click(Sender: TObject);
begin
  Caption := IntToStr( TotalControls(Self, TEdit) );
end;

lbidi 04-10-2007 21:10:19

Gracias, me sirvio mucho ese for. No lo conocia.
Ahora como hago para preguntar dentro del for, si el tedit tiene valor?
o si su propiedad "text" no esta vacia??

Gracias otra vez

Bicho 04-10-2007 21:13:11

Hola,

ahora mismo no tengo Delphi a mano, pero creo recordar que es simplemente así:

Código Delphi [-]
function TotalControls(container: TWinControl;
 classType: TClass) : integer;
var
  i: integer;
begin
  result := 0;
  for i := 0 to container.ControlCount-1 do begin
    if (container.Controls[i] is classType) then begin
      Inc(result);
     
      if (container.Controls[i] is classType).Text = 'Hola' then ...
  
    end;
  end;
end;


Si voy mal, por favor que me corrigan.

Saludos

maeyanes 04-10-2007 21:23:36

Para preguntar si un TEdit no está vació basta con:

Código Delphi [-]
if Edit1.Text <> '' then

Ya con el ejemplo de Dec y lo que agregó Bicho debes poder lograr lo que buscas...


Saludos...


La franja horaria es GMT +2. Ahora son las 23:11:42.

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