Q&A

  • Listbox가.........
Table에서 두 개의 Field를 ListBox에 출력시킨 후에

한 개 Field의 선택된 레코드만 EditBox에 출력시키려고 합니다.

방법 좀 알려주세요.(코딩도..히히)

1  COMMENTS
  • Profile
    김준성 1999.08.24 23:57
    델파이 초보 께서 말씀하시기를...

    > Table에서 두 개의 Field를 ListBox에 출력시킨 후에

    > 한 개 Field의 선택된 레코드만 EditBox에 출력시키려고 합니다.

    > 방법 좀 알려주세요.(코딩도..히히)





    질문하신 내용에서

    Field가 두개라고 했는데 혹시 record를 field로 착각하신건 아니지 모르겠습니다. 어찌됐든 Field로 간주하고 다음처럼 만들어 보았습니다.

    (컴파일을 하지 않아서 장담할 수는 없지만...)



    <참고> 초보시라니까 한마디만 더..

    Table에서 읽어온다고 했으므로 Data Access 탭에 있는

    TTable이나 TQuery 그리고 DataSource를 사용하시고

    ListBox대신에 DBGrid나 DBListBox 를 이용하세요.

    그리고 EditBox대신에 DBText나 DBEdit를 이용하시면

    마스스만으로도 간단히 작성하실 수 있습니다.





    procedure TForm1.Button2Click(Sender: TObject);

    var

    str : String ;

    begin

    listBox1.Clear ;

    With Query1 do begin

    Close ;

    SQL.Clear ;

    SQL.ADD(' SELECT Col_1, col_2 FROM myDB ');

    OPEN ;

    while not EOF do begin

    str := FieldByName('col_1').AsString ;

    str := str + '|' + FieldByName('col_2').AsString ;

    listBox1.Items.Add(str);

    end;

    end;

    end;



    procedure TForm1.ListBox1Click(Sender: TObject);

    var

    str : String ;

    i, p : Integer ;

    begin

    ListBox2.Clear ;

    i := Listbox2.ItemIndex ;

    str := ListBox2.Items[i].Strings

    p := pos(':',str);

    Edit1.Text := copy(str,1,p -1);

    end;