Ну куда ж подробнее.
Заполнение:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
ComboBox1.Items.Clear;
ComboBox1.Itema.AddObject('1 квартал 2008',TObject(4063));
ComboBox1.Itema.AddObject('2 квартал 2008',TObject(4120));
ComboBox1.Itema.AddObject('3 квартал 2008',TObject(4254));
ComboBox1.Itema.AddObject('4 квартал 2008',TObject(5000));
end;
При выборе элемента:
Код:
procedure TForm1.ComboBox1Change(Sender: TObject);
var
C : Integer;
begin
If ComboBox1.ItemIndex > -1 Then
Begin
Edit1.Text := IntToStr(ComboBox1.Items.Objects[ComboBox1.ItemIndex]);
End;
end;
Аесли ты про обертки, то там надо сделать класс и его экземпляры использовать при добавлении и при извлечении.
Код краткий, только для понимания принципа:
Код:
type
TComboCurrency = class
private
FValue : Currency;
public
constructor Create(AValue : Currency); virtual;
property Value : Currency read FValue write FValue;
end;
constructor TComboCurrency.Create(AValue : Currency);
begin
inherited Create;
FValue := AValue;
end;
тогда код будет выглядеть так:
Заполнение:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
ComboBox1.Items.Clear;
ComboBox1.Itema.AddObject('1 квартал 2008',TComboCurrency.Create(4063.10));
ComboBox1.Itema.AddObject('2 квартал 2008',TComboCurrency.Create(4120.20));
ComboBox1.Itema.AddObject('3 квартал 2008',TComboCurrency.Create(4254.30));
ComboBox1.Itema.AddObject('4 квартал 2008',TComboCurrency.Create(5000.40));
end;
При выборе элемента:
Код:
procedure TForm1.ComboBox1Change(Sender: TObject);
var
V : TComboCurrency;;
begin
If ComboBox1.ItemIndex > -1 Then
Begin
V := ComboBox1.Items.Objects[ComboBox1.ItemIndex] As TComboCurrency
Edit1.Text := V.Value;
End;
end;