Ver Mensaje Individual
  #5  
Antiguo 03-05-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 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 dalyla2010.

Fijate si esto te sirve o te ayuda a hacer lo que estas buscando. El ejemplo usa un TComboBox, TDBLookupCombobox, TDataSource y un DataSet,
también agrego la propiedad ItemIndex_ID.
Código Delphi [-]
...
type
  TComboBox = class(StdCtrls.TComboBox)
  private
    procedure SetItem_ID(Item_ID: Integer);
    function GetItem_ID: Integer;
  public
    property ItemIndex_ID: Integer read GetItem_ID write SetItem_ID;
  end;
  TForm1 = class(TForm)
    //Aca tu DataSet
    DataSource1: TDataSource;
    ComboBox1: TComboBox;
    DBLookupComboBox1: TDBLookupComboBox;
    procedure FormShow(Sender: TObject);
    procedure DBLookupComboBox1CloseUp(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    ...
  end;
var
  Form1: TForm1;

implementation

(* TComboBox *)
function TComboBox.GetItem_ID: Integer;
begin
  Result:= Integer(Items.Objects[ItemIndex]);
end;

procedure TComboBox.SetItem_ID(Item_ID: Integer);
begin
  if Item_ID in [0.. Items.Count-1] then
    ItemIndex:= Items.IndexOfObject(TObject(Item_ID));
end;

(* TForm1 *)
// Cargar el ComboBox
procedure TForm1.FormShow(Sender: TObject);
begin
  while not DataSet.Eof do
  begin
    ComboBox1.Items.AddObject(DataSet.FieldByName('NOMBRE_PAIS').AsString,
     TObject(DataSet.FieldByName('PAIS_ID').AsInteger));
    DataSet.Next;
  end;
end;

// Pone en ComboBox1 la selección realizada
procedure TForm1.DBLookupComboBox1CloseUp(Sender: TObject);
begin
  ComboBox1.ItemIndex_ID:= DataSet.FieldByName('PAIS_ID').AsInteger;
end;

// Pone en DBLookupComboBox la selección realizada
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  DBLookupComboBox1.KeyValue:= ComboBox1.ItemIndex_ID;
end;
...
Si hay algo en lo que no me expliqué bién, ajusto el ejemplo para alguna tabla que venga con Delphi y te adjunto los archivos.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 03-05-2011 a las 22:55:12.
Responder Con Cita