Q&A

  • 프로시저 리스트
안녕하세요?

델파이를 독학하고 있는 전산 문외한입니다.

전문가들께서는 긴 코드를 어떻게 관리하시는지요?

문법 등은 책과 도움말을 통해 공부하고 있으나 책에 나오지 않는 잔 기술들을 습득하기는 힘드네요.

코드가 길어지면 스크롤해 가며 특정 프로시저를 찾아 보기가 힘든데요.
프로시저들만 나열해서 볼 수 있는 방법이 있는지요.
코드 익스플로러의 설정을 프로시저들로만 해도 프로시저 아닌 것들이 더 많이 나와서요.

그럼 이만.
2  COMMENTS
  • Profile
    소울해커 2008.02.02 07:43
    전문가는 아니지만 저 같은 경우는 따로 모아둡니다.

    폼없이 유니트만 하나 만들어서 전체적으로 공통으로 쓰이거하는 경우나

    임의로 만든 프로시져, 함수를 따로 모아두죠. (전역변수라던지...)

    Common_u, Function_u, Procedure_u...

    등등... 그리고 사용할 폼에선 해당 유닛을 Uses에 추가해서 쓰고...

    성격에 따라 따로 분류해두기도 하고...

    데이터 모듈이나 액션리스트로 모아두기도 하고...

    한 프로시져내에서만 특수하게 사용되는 함수나 프로시져의 경우 내부 프로시져로 넣어버리고...

    ex)
    procedure Form1.Button1Click(Sender: TObject);
      function IsNull(sMessage: String): Boolean;
      begin
        Result := sMessage = '';
      end;
    begin
      if IsNull(Edit1.Text) then
        ShowMessage('값이 없습니다.');
    end;

    (예로 들긴 했지만 이렇게 간단한 부분까지 굳이 프로시져나 함수로 만들 필요는 없겠죠. ㅎㅎ;)

    제일 좋은건 그렇게 나눌 필요없이 각 폼마다 하는 일을 특정지어서 분류하는게 제일 좋아보이긴 합니다.

    그러면 추가로 사용자 정의 프로시져나 함수가 생길 일이 극히 줄어들겠죠.






  • Profile
    김범진 2008.02.02 21:48
    올려 주신 글은 잘 읽었읍니다.
    고맙습니다.
    코딩에 도움이 될 거 같습니다.
    그럼 이만.
    • 김소연
    • 2008.02.02 13:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.02.12 05:31
      오로지 영어나 숫자만 입력 받고 싶으시다면 IMEMODE를 imAlpha로 해보세요. 그래도 안 먹으면 KeyP...
    • 김범진
    • 2008.02.01 18:25
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.02.02 07:43
      전문가는 아니지만 저 같은 경우는 따로 모아둡니다. 폼없이 유니트만 하나 만들어서 전체적으로 공통으...
    • 김범진
      2008.02.02 21:48
      올려 주신 글은 잘 읽었읍니다. 고맙습니다. 코딩에 도움이 될 거 같습니다. 그럼 이만.
    • 이정욱
      2008.02.01 18:34
      제데로 받아오신것 같습니다.. <Form name="Tax" method="post" action="./refer_saupja_caution.asp"&...
    • 초봉델파이어
      2008.02.02 19:14
      빠른 답변 감사드립니다.. 다시 질문을 드렸었는데 ... 인터넷을 검색해서 웹브라우저로 처리했네요....
    • 이정욱
      2008.02.06 04:29
      자바스크립트 처리 엔진을 만드시는것보다는... 아마 웹브라우져를 사용하시는게 편하실것 같습니다. 다만...
    • 김태열
    • 2008.02.01 05:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 정경철
      2008.02.01 19:11
      zeosDBconnect.Hostname := ''; zeosDBconnect.User     := ''; zeosDBconnect.Da...
    • Lee
    • 2008.01.31 00:24
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 델델
    • 2008.01.31 00:15
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김소연
    • 2008.01.30 02:50
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.01.30 18:27
      1. TDrawGrid(DBGrid1).ScrollBars := ssNone; 2. TDrawGrid(DBGrid1).Options := TDrawGrid(DBGrid1).O...
    • 김소연
      2008.02.01 01:32
      소울해커님 답변감사해요^^;; 추가질문이 있어서요.. 2번의 경우요.. 전체필드의 옵션말고 각각의 칼럼별...
    • 소울해커
      2008.02.01 02:41
      후웁... 대한민국에 안 되는게 어디 있겠습니까... 만은... 효율성이 떨어지는 건 있기마련이죠. 기본 ...
    • 델델
    • 2008.01.29 20:41
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.01.29 23:46
      ComboBox1.Style := csDropDownList; 로 하시면 됩니다.
    • 머프
    • 2008.01.29 12:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.01.30 00:07
      폼이 종료되지 않도록 하실려는거라면 따로 전역 변수를 두시고 처리하시면되겟네요. public  ...
    • 머프
    • 2008.01.29 12:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 나는살아있다.
      2008.01.29 19:03
      NT에서는 안먹히는 것으로 알고 있습니다. Hooking으로 방향을 잡으시는게......
    • 김소연
    • 2008.01.29 03:28
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.01.30 01:53
      FileNm := ExtractFilePath(Application.ExeName) + '\Set\Image\' + dbGrid1.Fields[1].AsString + '.Bmp'...
    • 김소연
      2008.01.30 03:01
      CellRect는  TDbGrid에 없는 속성이군요ㅠㅠ+ 그리고 아래와 같이 수정하였더니 이미지 사이즈...
    • 소울해커
      2008.01.30 03:11
      Outrect := (ACol * DBGrid1.DefaultColWidth, ARow * DBGrid1.DefaultRowHeight, (ACol + 1) * DBGrid1....
    • 김소연
      2008.01.30 03:25
      답변감사합니다. 그런데 TdbGrid에는 DefaultRowHeight등의 속성이 없네요.ㅠㅠ+ 간단한듯하지만 잘 풀리...
    • 소울해커
      2008.01.30 03:51
      Outrect := (ACol * TDrawGrid(DBGrid1).DefaultColWidth, ARow * TDrawGrid(DBGrid1).DefaultRowHeight, ...
    • 남호성
    • 2008.01.28 22:58
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 황경수
    • 2008.01.28 20:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 소울해커
      2008.01.30 00:03
      생뚱맞은 답변이 될줄 모르겠습니다. 1. 그리드 하나 올려놓으시고 그리드의 ScrollBar를 모두 없애세요...
    • 김영대
      2008.01.26 03:03
      제가 알기론 대부분의 외국 터미널에서 멀티바이트 처리를 안하는거루 알고있습니다. 그래서 당연히 ...
    • 존재의바다
      2008.01.28 07:44
      답변 감사합니다. 혹시 온누리의 김영대님이세요? SQT의 이채성입니다. 갑자기 terminal을 하나 개발...
    • 델사랑
    • 2008.01.25 00:53
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 성더기
      2008.01.26 01:29
      Tcp-ip에 대한 기본적인 내용입니다 인터넷은 주로 80번포트를 사용합니다. 그포트 막으면 인터넷도 당연...
    • 하늘 산
      2008.01.25 01:13
      안녕하세요. 포트가 막혀있는 DB포트가 막혀있는 경우에는 Delphi에서는 마이다스라는 기능이 있습니다 ...
    • 장성호
      2008.01.25 03:32
      Listview의 아이템 Caption에 내용이 안보이게 하려면? 1. Caption에 내용을 넣지 않는다. 2. ListVi...
    • 이진생
      2008.01.25 06:03
      답변 감사드립니다. 혹시 Caption의 위치는 변경가능하나요 ? 현재는 화면 우측상단에 있는데 이것을...