Q&A

  • 자주쓰는 테이블을 메모리로 만들려고 Tstrings
자주 쓰는 코드들을 프로그램이 실행될때.. String List로 만들어서

각각의 폼마다 불러쓰고싶어서 함수를 만들었습니다.(공통모듈에 만듬)

그런데 함수로 만들고 나서 변수값이 입력을 하는데 String List가 생성이

안되는 것 같아요. 엄밀히 말하면 함수안에서는 생성이되는데..

변수를 넣어서 함수에 들어가면 그 변수값으로 스트링리스트가 생성이 안되요.

아래 한번 읽어보시구요...

참.. 또하나.

기초코드 table이 4개가 있는데.. (칼럼은 2개임)

이것을 여러개의 폼에서 그때그때 부르지않고 메인폼이 생성될때 메모리에

올려서 콤보박스로 쓰고 싶은데 좋은 방법없을까요?

콤보박스 한개를 지정해서 그것을 다른 폼에서 계속 불러 쓸수있나요?

(물론 아이템까지 전부 불러서요// 각폼마다 그 콤보박스는 한개존재합니다)



그럼 제가 만든것좀 봐주세요..



일단 sky_name, sky_code:TStrings 라는 전역변수를 메인폼에 선언하고

폼생성시에..

sqls:='select sky_name, sky_code from sky';

prc_list(sqls, sky_name, sky_code);

이렇게 지정을 하고 불러오기로 했구요..

그함수는 아래와 같이 생겼습니다.



procedure prc_list(sqls:string; name,code:TStrings);

var

i : Integer;

begin

name := TstringList.Create;

code := TstringList.Create;

for i := 1 to row갯수 do

begin

name.add(첫번째칼럼값);

code.add(두번째칼럼값);

// showmessage(name[i-1]); <-- 실행결과 이부분은 작동합니다.

// showmessage([i-1]); <-- " "

end;

end;

end;



그리고 메인폼다음에 다른 폼을 생성하면서

콤보박스에 값을 넣어주려고..

combobox1.assign(sky_name);

combobox2.assign(sky_code);

이렇게 선언했는데요... nil 값을 넣을 수가 없다고 나오네요



함수는 잘돌아가는데.. 거기서 내가 지정한 변수대로

string list가 생성되지 않는 것같아요.



어디가 잘못되었는지 조언 부탁드립니다!!!! 급해요.. :(

1  COMMENTS
  • Profile
    유 효종 2000.02.01 23:32


    나이가 40대인 사람 한테 18살 미팅 시켜주면

    TV 에 사진/이름/주소 다 나옵니다.

    40대아저씨와 같이사는 10대 와 18살을 Assign 시켜줘야죠!



    40대 아저씨( ComboBox1 )

    40대 아저씨 자식(ComboBox1.Items)

    18살 소녀/소년 (Name)



    ComboBox1.Items.Assign(Name);