Ver Mensaje Individual
  #6  
Antiguo 09-05-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
Hola kbaby,
Entonces no estamos hablando de base de datos... sino de uso de ficheros.
Olvida lo que dije sobre ADO, motores de base de datos.

¿A que le llamas tabla? Para mi una tabla es un TxxxTable. Y esto si es ya el mundo de base de datos.

Sería bueno que nos expliques profundamente que es lo quienes. Porque cualquier palabra que digas puede tener un significado para otros. Como dije... una tabla para mi es una tabla de una base de datos, a la cual accedo mediante un TTable, o un TQuery, linqueado a un DataSource y una TConeection... etc Y como ves, esto es un mundo que no estás explorando por el momento.

Por el momento lo que te entiendo es que tienes unos datos en el TListBox y tu deseas buscar un item en específico. Para ello se cuenta con el método IndexOf() que devuelve el índice del item si lo encuentra.

El código que te paso a continuación busca el contenido de un TEdit en un TListBox, en caso de encontrarlo lo selecciona, de otra manera recibes un mensaje:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var Index: integer;
begin
  Index := ListBox1.Items.IndexOf(Edit1.Text);
  if Index >= 0
     then ListBox1.Selected[Index] := True
     else ShowMessage('Elemento no encontrado');
end;

Por lo segundo, Tienes dos forms. Cada uno con su respectiva Unit. Para hacer lo que buscas debes declarar la unit de uno en otro en la sección unit.

Código Delphi [-]
Unit Unit2;

interface
...

uses
  bla, bla, bla, Unit1.

...

Entonces esto permite de que desde Unit2 "veamos" y tengamos acceso a Unit1.

Pero he aquí un dilema, Si Unit1 "llama" a Unit2 y Unit2 debe comunicarse a Unit1 y si declaras en uses la Unit del otro, provocarás un conflicto que recibe el nombre de referencia circular. ¿Como solucionarlo?
Uno de los Unit debe tener declarado el uso de la otra unit en la sección implementation y el otro en interface:

Código Delphi [-]
Unit UnitX;

...

implementation

uses
 UnitY;
...

Espero que esto te haya dado una idea. Más no puedo decirte puesto que no comprendo tu idea. Como he dicho, sería oportuno que nos describieses mejor el problema.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita