Q&A

  • 폼에 올릴수 있는 컴포넌트 최대수는?
안녕하세요?



델로 프로그램작성중 어려운 문제에 봉착했습니다.



GraphicControl을 계승받아 Pipe(말그대로 파이프 역할)를 만들었습니다.

Value에 의해 색이 바뀌는 간단한 것입니다.



문제는 화면에 표시해야 하는 수가 한 400개 정도 될것 같더군요.

열심히 가져다 위치잡고 하다보니 갑자기 델이 맛이 가더군요.



몇번해보니 델의 리소스 문젠것 같더군요.

한 250개정도 올려놓고 실행하면 가버리더군요.

빌드올로 하고 EXE를 실행해보니 실행은 되더군요.

한 280개까지 늘려보니 실행후 종료하다 가버리더군요.



컴포넌트가 잘못되서 그런가 보다하구 기본컴폰넌트로 해보아도 수량의 차이는

있어도 결과는 마찬가지더군요.



이런문제의 원인과 해결책은 없나요?



빈드시 400개정도는 꾸겨넣어야 폼이 완성되는데 골치 아프네요.



도움 부탁합니다.

1  COMMENTS
  • Profile
    이정욱 1999.05.08 15:58
    제일 좋은 방법은 필요시에 생성하는 동적 생성을 이용하세요.

    미리 컴포넌트를 폼위에 놓으면 그 컴포넌트를 생성 후 실행이 시작됩니다.

    일단 폼위에 꼭 필요한것들만 올려놓으시구...

    다음에는 같은 컴포넌트를 Array로 선언을 한뒤 생성을 시켜보세요.

    물론 생성 후 필요 없어졌을때는 Free를 해주셔야 겠죠?

    만약 TLabel을 300개 생성한다면 아래와 같이 해보세요.



    var

    Label : array[1..300] of TLabel;



    만약 Label을 다른 함수에서도 이용한다면 위의 선언은 전역변수로 하셔야 겠죠?



    그리고 생성은...



    for i := 1 to 300 do

    begin

    Label[i] := TLabel.Create;

    Label[i].Parent := Form1;

    Label[i].Visible := True;

    end;



    생성 후 위치를 잡아 주는것도 잊지 마시구요..



    프로그램이 끝나기 전에 꼭 해제해주는것 잊지마세요.



    for i := 1 to 300 do

    Lebel[i].free;



    이거요...



    도움이 되셨기를....





    윤광윤 wrote:

    > 안녕하세요?

    >

    > 델로 프로그램작성중 어려운 문제에 봉착했습니다.

    >

    > GraphicControl을 계승받아 Pipe(말그대로 파이프 역할)를 만들었습니다.

    > Value에 의해 색이 바뀌는 간단한 것입니다.

    >

    > 문제는 화면에 표시해야 하는 수가 한 400개 정도 될것 같더군요.

    > 열심히 가져다 위치잡고 하다보니 갑자기 델이 맛이 가더군요.

    >

    > 몇번해보니 델의 리소스 문젠것 같더군요.

    > 한 250개정도 올려놓고 실행하면 가버리더군요.

    > 빌드올로 하고 EXE를 실행해보니 실행은 되더군요.

    > 한 280개까지 늘려보니 실행후 종료하다 가버리더군요.

    >

    > 컴포넌트가 잘못되서 그런가 보다하구 기본컴폰넌트로 해보아도 수량의 차이는

    > 있어도 결과는 마찬가지더군요.

    >

    > 이런문제의 원인과 해결책은 없나요?

    >

    > 빈드시 400개정도는 꾸겨넣어야 폼이 완성되는데 골치 아프네요.

    >

    > 도움 부탁합니다.





    • 강지영
    • 1999.05.09 05:42
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.10 08:47
      음냐...저의 생각으로서는 쿼리를 이용해 한방에 여러테이블에 자료를 업데이트 시키는 적이 무리가 있을...
    • 이정욱
      1999.05.08 21:32
      네... 김영대님의 홈에서 건져왔습니다. unit Unit1; interface uses Windows, Messages, SysUt...
    • 윤광윤
    • 1999.05.08 09:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.08 15:58
      제일 좋은 방법은 필요시에 생성하는 동적 생성을 이용하세요. 미리 컴포넌트를 폼위에 놓으면 그 컴포넌...
    • 강대근
    • 1999.05.08 05:23
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.05.09 05:17
      강대근 wrote: > 델파이로된 프로그램을 세개의 프로젝트로 나누어 만든후 메인이 되는폼만 Exe로 > 생...
    • 안치봉
      1999.05.11 23:07
      안녕하세요. 메일은 잘 받았습니다. 그런데 분석을 해보았는데 잘은 모르겠습니다. 메일로 보내들리려고 ...
    • 안태규
    • 1999.05.08 03:59
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 남호열
      1999.05.08 06:02
      안태규 wrote: > 년월일의 데이타를 년에 상관없이 월일사이의 일자를 sql에서 선택하려면 > 어떻게 해야...
    • 이호선
    • 1999.05.08 01:53
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.10 10:43
      참고로 Encrypt를 하는 컴포넌트(유닛)을 한델(http://www.delphi.co.kr)에 올려놓겠습니다. 이호선 wro...
    • 구창민
      1999.05.08 07:48
      이호선 wrote: > 안녕하세요. > 스트링데이타를 Encrypt할려하는데 좋은방법이 없을까요. > 의사코...
    • 이호선
    • 1999.05.08 01:51
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.05.08 07:44
      이호선 wrote: > 안녕하세요. > 타이틀바의 시스템메뉴(최대, 최소)의 기능을하는 델파이 함수나 api가 ...
    • 북해
    • 1999.05.08 01:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.08 22:03
      먼저 Project메뉴에 Options를 선택해 보세요. 그러면 Packages라는 탭이 보입니다. 그 탭을 클릭하신 후 ...
    • 북해
    • 1999.05.08 01:29
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.08 21:37
      데이타베이스 파일들을 다른 디렉토리나 플로피에 저장을 해두면 되지 않을까요? 음.. 조금 더 신경을 쓴다...
    • 이현정
    • 1999.05.08 01:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 하윤철
      1999.05.08 02:25
      제 경험에 따르면... Windows 국가별 설정의 날짜항목을 점검해보세요. 아마 mm-dd-yy로 되있을겁니다.
    • 영이...
    • 1999.05.08 00:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.08 04:44
      영이... wrote: > 아시는분 부탁합니다. > 1) DBGrid의 Columns란에... > '이름 주소 과목 성적 ...
    • 남호열
    • 1999.05.08 00:11
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.08 04:37
      남호열 wrote: > 안녕하세요? 지금 회사에서 프로그램 개발중입니다. > 근데 조회하는 폼을 만드는데 여...
    • 안치봉
      1999.05.09 05:13
      최덕환 wrote: > 안녕하세요.. 그동안 델파이로 프로그램을 짜면서 대체 > create()에서 안에 들어가는...
    • 그냥
      1999.07.06 20:37
      안치봉 께서 말씀하시기를... > 최덕환 wrote: > > 안녕하세요.. 그동안 델파이로 프로그램을 짜면서 대...
    • 신인재
      1999.05.08 04:29
      북해 wrote: > 안녕하세요. 염치없이 연속해서 묻게 되네요. > 요즘 메인메뉴의 글자크기를 조절하려...
    • 정재균
      1999.05.08 00:49
      > 먼저 응용프로그램이 로드될때 스프레쉬폼이 나오고 그 다음으로 패스워드 > 를 입력하는 다이알로그...
    • 정남용
      1999.05.08 00:21
      EditBox Component같은경우 Object Inspector의 Property항목을 보면 PasswordChar 가 있습니다... 이곳...
    • 건맨
    • 1999.05.07 21:23
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.08 20:30
      큰바위 wrote: > 프로그램을 Paradox DB를 이용하여 좀 무리가 있지만 Lan 버전으로 작성하려고 > 합니...
    • 이호선
    • 1999.05.07 21:01
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 정남용
      1999.05.08 00:15
      이호선 wrote: > 안녕하세요. > 폼이 focus가 있는 상태에서 다른 폼을 선택하면 focus를 잃은 폼을 > ...
    • 이호선
    • 1999.05.07 20:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.11 03:45
      네. 룩센트에서 답변을 받았습니다. 현재 사용하시고 계시는 것의 버전과 시리얼 넘버를 nort@nilex.co.kr...