Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   combobox al seleccionar item, aparezca lista dependiendo item del primer combobox (https://www.clubdelphi.com/foros/showthread.php?t=89809)

NovaV2 10-02-2016 21:57:30

combobox al seleccionar item, aparezca lista dependiendo item del primer combobox
 
Hola, acudo a este foro para pedir ayuda sobre un problema con los combo box. Realmente soy muuuuuuuuuy novato en este lenguaje de programacion ya que apenas he empezado, no llevo ni una semana en esto XD, por lo cual tal vez mi pregunta sea la más estupida del mundo, pero bueno.

Lo que quiero es que mi combo box al seleccionar un item de este aparezca una lista dependiendo del item que seleccione.

Me explico :

Estoy haciendo un formulario en el cual tengo un combo box, en ese combo box estan las algunas marcas populares de carros y quiero que cuando seleccione una marca, por ejemplo Audi, en otro combo Box salgan los modelos de Audi y si selecciona otra marca salga los modelos de esa marca. Como lograría esto?

Gracias de antemano y disculpen si mi pregunta es muy basica xD.

Casimiro Notevi 10-02-2016 23:18:28

http://www.clubdelphi.com/foros/showthread.php?t=89805

BDWONG 11-02-2016 02:28:08

Hola te dejo este ejemplo usando arreglos uno simple para las marcas y uno de dos dimensiones para los modelos
si tienes dudas me avisas



Código Delphi [-]
var
  Form1: TForm1;

  //Marcas de los autos
  marcas:array[0..2] of string=('Toyota','Chevrolet','Ford');

  //Modelos de los autos
  modelos:array[0..2,0..2]of string=(('Alphard','Altezza','Auris'),
                                      ('Bel Air','Beretta','Bison'),
                                      ('Capri','C-Max','Corcel'));

implementation

uses Math;

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
i:integer;
begin
   //Llenamos el comboBox1 con el nombre de las marcas
   For i:=low(marcas) to High(marcas) do
   begin
     ComboBox1.Items.Add(marcas[i]);
   end;
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
var
i:integer;
begin
  //Limpiacmos el comboBox2
  ComboBox2.Clear;
  //Si no marcas en el comboBox1 o no se ha seleccionado alguna marca salimos
  If ((ComboBox1.Items.Count=0) or (ComboBox1.ItemIndex=-1)) then Exit;

  //Rellenamos el comboxBox2 con los modelos de acuerdo a la marca
  For i:=low(modelos[0]) to High(modelos[0]) do
  begin
   ComboBox2.Items.Add(modelos[ComboBox1.itemIndex,i]);
  end;
  //Cambiamos el text del ComboBox2 para que el usuario visualise el efecto de cambio
  ComboBox2.Text:=modelos[ComboBox1.itemIndex,0];
end;

end.

Saludos...:)


La franja horaria es GMT +2. Ahora son las 14:07:42.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi