"drugi rzad" comboboxa i jednomiejsce w stringgrid

0

Witam,

Chce aby w jednym polu na stringgridzie pokazywala sie tresc z roznych comboboxow.
Jak to napisac ? Myslalem o czyms takim:

if ComboBox5.Text := 'Akcesoria' then
StringGrid3.Cells[2,3] := ComboBox9.Text;

if ComboBox5.Text := 'Telefony' then
StringGrid3.Cells[2,3] := ComboBox10.Text;

itd itd

no ale wywala bledy... pomocy

0

tutaj to rozrysowalem

<url>www.gsm-serv.pl/skan.JPG</url>

0

Nic z tego nie kumam, zwłaszcza z tego obrazka który na dodatek jest do góry nogami. Po obróceniu już lepiej ale dalej lipa.

Napisz lepiej krok po kroku o co ci chodzi, bo namieszałes. :>

0

chodzi o to , ze gdy wybieram na comboboxie nr. 1 nazwe "las" to pokaze mi sie drugi combobox o nazwie "las" w którym wybieram nazwe "drzewo" i ta nazwa ( drzewo ) trafia do wybranej przeze mnie czesci stringgrida ( np 1.1 )

To jest proste bo w buttonie dodajacym text z comboboxa do tabeli moge latwo wpisac ze combobox2.text do stringgrida w miejsce 1.1

ale co zrobic gdy w combobox1 zamiast "las" wybiore cos innego , pokaze sie wtedy inny combobox ( np. combobox3 ) ktorego nie ma zapisanego w buttonie , wiec nie trafi w miejsce 1.1 w stringgrid .

Moje pytanie brzmi , jak namierzyc ten combobox ktory pojawi sie po wybraniu z comboboxa1

0

Hmm ale utrudniasz sobie zycie ;P

Robisz tak (ja bym tak zrobil na szybko :P):

ComboBox1 <- widoczny na formie
ComboBox2 <- niewidoczny

Teraz wybieram z ComboBox1 np Telefon
to ComboBox2 wtedy daje sie ComboBox2.Visible := True; a do niego wczytujesz dane z telefonami np z tablic

Jak w ComboBox1 wybierzesz prezerwatywy to analogicznie ComboBox2.Vis.... := True; i z tablicy wczytujesz do niego marki prezerwaty nie bede pisał jakich bo tu nie ma miejsca na reklamy ;P :>

Daje baaaaaaardzo prymitywny kodzik ale jest ogolna zasada dzialanie o takie cos chodzi??

var
  Form1: TForm1;
  Lista: array [0..1, 0..4] of String;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
begin
  ComboBox1.AutoComplete := True; // przyda Ci się ;)
  // wczytanie towaru do ComboBox1
  for I := 0 to 1 do
    ComboBox1.Items.Add(Lista[I][0]);
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
var
  I: Integer;
begin
  // tutaj mozesz zrobisz przeszukiwanie
  // tablic pobranie ich ID etc co Ci sie podoba ;)
  if LowerCase(ComboBox1.Text) = 'telefon' then
  begin
    for I := 1 to 4 do
      ComboBox2.Items.Add(Lista[0][I]);
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  // przypisanie wartosci do tablic ;)
  Lista[0][0] := 'Telefon';
  Lista[1][0] := 'Samochód';
  // telefony
  Lista[0][1] := 'T1';
  Lista[0][2] := 'T2';
  Lista[0][3] := 'T3';
  Lista[0][4] := 'T4';
  // samochody
  Lista[1][1] := 'S1';
  Lista[1][2] := 'S2';
  Lista[1][3] := 'S3';
  Lista[1][4] := 'S4';
end;

@RedbaK: lol sorki ;P</image>

0

rzycie? ;-P

1 użytkowników online, w tym zalogowanych: 0, gości: 1