Ainda Combobox...

Delphi

14/04/2003

:? Por favor me ajudem nesse dilema, sabendo-se que cada 2 posições em INICIAIS representa 8 posições em NOME, o que está errado??

procedure TForm1.FormCreate(Sender: TObject);
var
iniciais:string;
i:integer;
begin
iniciais:=´ACALAMAPBACE´;
for i:=1 to 6 do
begin
combobox2.Items.Add(copy(iniciais,2*i-1,2));
end;
end;

procedure TForm1.ComboBox2Change(Sender: TObject);
var
nome:string;
begin
nome:=´ACRE ALAGOAS AMAZONASAMAPA BAHIA CEARA ´;
edit2.Text:=copy(nome,8*combobox2.itemindex-7,8);
end;


Jfbispo

Jfbispo

Curtidas 0

Respostas

E_gama

E_gama

14/04/2003

Por que você não faz de outra forma ?

Vai uma sugestão:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    ComboBox2: TComboBox;
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
    procedure ComboBox2Click(Sender: TObject);
  private
    FSiglas: TStrings;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var I: Integer;
begin
  FSiglas := TStringList.Create;

  FSiglas.Add(´AC=ACRE´);
  FSiglas.Add(´AL=ALAGOAS´);
  FSiglas.Add(´AM=AMAZONAS´);
  FSiglas.Add(´RJ=RIO DE JANEIRO´);
  FSiglas.Add(´SP=SÃO PAULO´);
  FSiglas.Add(´BA=BAHIA´);

  ComboBox2.Items.Clear;
  for I := 0 to (FSiglas.Count - 1) do
    ComboBox2.Items.Add(Copy(FSiglas[I], 1, 2));

end;

procedure TForm1.ComboBox2Click(Sender: TObject);
begin
  Edit1.Text := FSiglas.Values[ComboBox2.Text];
end;

end.




GOSTEI 0
Jfbispo

Jfbispo

14/04/2003

procedure TForm1.FormCreate(Sender: TObject);
var
iniciais:string;
i:integer;
begin
iniciais:=´ACALAMAPBACE´;
for i:=1 to 6 do
begin
combobox2.Items.Add(copy(iniciais,2*i-1,2));
end;
end;

procedure TForm1.ComboBox2Change(Sender: TObject);
var
nome:string;
begin
nome:=´ACRE ALAGOAS AMAZONASAMAPA BAHIA CEARA ´;
edit2.Text:=copy(nome,8*(combobox2.itemindex+1)-7,8) ;
end;


GOSTEI 0
POSTAR