Q&A

  • 동적 생성된 객체에서 이벤트 주는 방법....
동적으로 객체를 생성하였습니다.

그래서 그 각체의 모양이 바뀌든지..암튼..뭐 그런 객체에 해당되는 이벤트가 발생한다면

그걸 어떻게 처리함까?

직접 객체를 올려놓는다면..프로퍼티에서 이벤트를 찾을 수 있지만...

동적인 경우라면... 어떻게 접근해야 되는지....

초보라 개념이 없음..ㅜㅜ

Proc를 쓴다고는 들었는데..구체적으로 잘 몰라서여...

책을 찾았는디.... 아직 책찾는법을 모르나봐영.... 시원한 답이 안나오더라구영..ㅜㅜ

고수님들... 답변 부탁드림다... (--) (__)
3  COMMENTS
  • Profile
    최용일 2002.08.21 03:53
    안녕하세요. 최용일입니다.

    직접 객체를 올려놓든지 동적으로 생성해서 연결하든지 별다른 차이는 없습니다.

    델파이 IDE에서 한다면 이벤트 탭에서 이벤트 연결해주고, 동적으로 생성한다면 코딩으로 연결해주시면 됩니다. 어떠한 경우든지 해당 이벤트는 코딩이 되어 있어야죠...

    Button1.OnClick := Button1Click;
    Image1.OnMouseMove := Image1MouseMove;

    위와 같은 식으로 코딩되어 있는 이벤트를 연결시켜주시면 됩니다. 이벤트마다 각각의 타입이 있으니까 같은 타입의 이벤트를 연결시켜주셔야하구요.

    ^^ 항상 즐코하세요...

  • Profile
    조걸 2002.08.21 03:59
    아 지송한디영..그럼 좀 구체적으로...
    var
      NewC: TYShape;
      PropInfo:PPropInfo;
      m: TMethod;
      me: TNotifyEvent;
    ........................................
    그 담에...
    TYShapes는 만든 콤포넌트임..

       PropInfo := GetPropInfo(NewC.classinfo , 'OnResize');
       if PropInfo<>nil then begin
          me := shape_resize;
          m := TMethod(me);
          SetMethodProp(NewC, PropInfo, m);
       end;

    이렇게 했구영... shape_resize는 프로시저구여

    procedure Tfinsert_vatualvalue.shape_resize(Sender: TObject);
    begin
       if (TYShape(Sender).linemode in [ln90]) then begin
          ed_screeny.Text := inttostr(TYShape(Sender).Height);
          showmessage(inttostr(TYShape(Sender).Height));
          TYShape(Sender).Width := 11;
       end
       else begin
          ed_screenx.Text := inttostr(TYShape(Sender).width);
          TYShape(Sender).Height := 11;
       end;
    end;
    입니다.....
    근디..if PropInfo<>nil then begin 조건에서... 통과하지를 않네영..
    분명 객체는 생성되서 잘 나오고 있는데..propinfo가 들어가지 않는게...
    이상하네영..





  • Profile
    최용일 2002.08.21 06:00
    안녕하세요. 최용일입니다.

    흠~ RTTI를 왜 사용하시는지 이유를 잘 모르겠네요...

    그냥 형변환해서 넣어주시면 될것같은데...

    TYShapes(NewC).OnResize := shape_resize;

    위와 같이 하시면 될것같네요...

    디자인타임모듈 만들때 아니면 RTTI 사용안하시는 것이 더 좋습니다.

    ^^ 항상 즐코하세요...

    • DevYang
    • 2002.08.21 23:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박성훈
      2002.08.31 19:19
      안녕하세요? 아래 예제 코드는 퀀텀그리드에서 선택된 데이터만 CVS파일로 만드는 예제입니다. pro...
    • 한원희
      2002.08.21 23:43
      안녕하세요. 한원희입니다. 정렬관련 옵션으로, 오른쪽 정렬로 출력하란 의미죠. 기본 정렬은 왼쪽이거...
    • 델파이사랑
      2002.08.21 23:44
      근데여..... procedure TForm1.Button3Click(Sender: TObject); begin     Label...
    • ㄴ ㅏ ㅁ ㅑ
      2002.08.22 00:37
      기본이 왼쪽정렬이라면 %-20s 한 문자는 오른쪽 정렬이여야 하고 % 20d 한 숫자는 왼쪽 정렬이 되는게 맞...
    • 델파이사랑
      2002.08.22 01:44
      알아냈습니다....... 1) 우선... %-20은 왼쪽정렬이고. %20은  오른쪽정렬입니다. 2) ...
    • 김진석
    • 2002.08.21 21:58
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 나옹이
      2002.08.21 22:03
      showmessage(edit1.Parent.Name);
    • 김헌대
    • 2002.08.21 21:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.08.21 22:30
      hsr//////////////////////////////////////////////////////// 위에건 마우스 우측클릭시 포커스 가져오...
    • 김호규
    • 2002.08.21 21:10
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김재환
    • 2002.08.21 21:01
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김재환
      2002.08.22 18:57
      그극....^.^! length라는 함수는 델파이에서 문자수를 반환하는 함수..있고요.. mdb에서는 쿼리문에서는 ...
    • 임형호
      2002.08.21 22:21
      mdb는 잘 모르겠는데요. length 라는 함수가 있나요? 다른문장은 SQL 기본적인 문장이니...에러 날것은 없...
    • 임상현
    • 2002.08.21 21:00
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이상협
    • 2002.08.21 18:35
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 임형호
      2002.08.21 22:27
      테스트를 해봐야되는데.. 에궁.. 정확한지는 테스트를 직접해보세요. 우선 edit를 하긴했는데.. 다...
    • 김진태
    • 2002.08.21 18:09
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이현철
      2002.08.21 18:32
      자료실을 검색하시면, Ping 소스가 많이 공개되어 있습니다. 저는 ICS 컴포넌트 팩의 Ping 컴포넌트를 사...
    • 나옹이
    • 2002.08.21 09:52
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.08.22 04:38
      hsr///////////////////////////////////////////////// 재귀호출은 최용일님것 사용하구요 Treeview1,Tr...
    • 델사랑
    • 2002.08.21 09:08
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이상현
    • 2002.08.21 07:19
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안익환
      2002.08.21 20:42
      도움만 얻었던 제가 답변을 할거리가 생겨서 다행이군요 ^^; 아직 허접입니다만 마소에서 보니 공개형 ...
    • ^ㅡ^
      2002.08.21 06:00
      //답변이 될런지 모르겠습니다. 페이지헤더를 사용하세요 그람 매 페이지마다 나옵니다
    • 미러
      2002.08.21 18:52
      그럼 grouptitle밴드도 마찬가지 인가요? 마찬가지로 한번만 출력이 되는건지 아니면 여러번 출력할수 있...
    • 꿀그림자
      2002.08.22 20:02
      title을 pageheader의 child 밴드로 만들어서 출력하면 pageheader랑 같이 페이지마다 출력된답니다. 도...
    • 탁정석
    • 2002.08.21 05:39
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.08.21 05:45
      hsr///////////////////////////////////////////////////////// 아래 두함수중하나를 사용해보세요 &nbs...
    • 탁정석
      2002.08.22 01:34
      답변 감사합니다...ㅠ,.ㅠ 그런데, jpg나 gif로 저장하는 방법은 따로 없나요?
    • 홍성락
      2002.08.21 05:25
      hsr///////////////////////////////////////////////////////////// 델파이가 설치된 폴더에서 Demos폴더...
    • 김경남
      2002.08.21 18:39
      감사합니다. ^^
    • 최용일
      2002.08.21 06:11
      안녕하세요. 최용일입니다. string은 객체와 비슷한 성격을 가지고 있어요. string자체가 하나의 포인터...
    • 조걸
    • 2002.08.21 03:41
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.08.21 03:49
      안녕하세요. 최용일입니다. 컴포넌트는 토리사이트같은데서 검색해보시면 있을겁니다. http://www.ef...
    • 조걸
    • 2002.08.21 03:39
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.08.21 03:53
      안녕하세요. 최용일입니다. 직접 객체를 올려놓든지 동적으로 생성해서 연결하든지 별다른 차이는 없습...
    • 조걸
      2002.08.21 03:59
      아 지송한디영..그럼 좀 구체적으로... var   NewC: TYShape;   PropInfo:PPropInf...
    • 최용일
      2002.08.21 06:00
      안녕하세요. 최용일입니다. 흠~ RTTI를 왜 사용하시는지 이유를 잘 모르겠네요... 그냥 형변환해서 ...