Ver Mensaje Individual
  #12  
Antiguo 14-03-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Reputación: 14
verito_83mdq Va por buen camino
Acá lo tengo cocinado por ahora anda bien, puedo recorrer el dbgrid con el cursor sin necesidad de usar el mouse en ningún momento.
Con un poco de trabajo el dbgrid se convirtió en una lista desplegable muy cómoda.
Este es el código:
Código Delphi [-]
procedure TAltasForm.CiudadEditKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin




             if Key = VK_DOWN then
                begin
                   QueryDataModule.CiudadZQuery.Next;
                   idciu:=QueryDataModule.CiudadZQuery.FieldByName('Ciudad').Text;
                end;

             if Key = VK_UP then
                begin
                   QueryDataModule.CiudadZQuery.Prior;
                   idciu:=QueryDataModule.CiudadZQuery.FieldByName('Ciudad').Text;
                end;
end;

procedure TAltasForm.CiudadEditKeyPress(Sender: TObject; var Key: Char);
begin


             DBGrid1.Visible:=True;
             DireccionLabel.Visible:=False;
             EmailLabel.Visible:=False;

             with QueryDataModule.CiudadZQuery do
                 begin
                     If active then close;
                     SQL.Clear;
                     Sql.Add('Select *  from ciudad where ciudad.Ciudad like '''+CiudadEdit.Text+'%'' and ciudad.ID_provincia=ro');
                     ParamByName('pro').AsAnsiString:=ProvinciaDBLookupComboBox.KeyValue;
                     Open;
                     Active:=True;
                 end;

             if QueryDataModule.CiudadZQuery.IsEmpty then
               begin
                ShowMessage('No hay Resultados');
                DBGrid1.Visible:=False;
                CiudadEdit.Clear;
               end;




               If Key = #13 Then
               begin
                  CiudadEdit.Text:=(''+idciu+'');
                  DBGrid1.Visible:=False;
                  EmailLabel.Visible:=True;
                  DireccionLabel.Visible:=True;
               end;




end;

Recién le encontré un problema, si uso las flechas me guardar la ciudad en la variable como corresponde, el drama es cuando selecciono la primera ciudad, osea cuando no uso las fechas y no me guarda la variable !!!

Me estoy complicando demasiado me parece.

Saludos!!

Última edición por verito_83mdq fecha: 14-03-2011 a las 14:44:32.
Responder Con Cita