Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[4107] >질문< 다시 PopupMenu에 대한 재질문입니다...
hwinet [ ] 1126 읽음    1998-08-20 10:33
제 질문에 답변해주신 댁스터(ZPDSPF1)님께 정말 감사를 드립니다.....
하지만 댁스터(ZPDSPF1)님께서 답변(3966)을 주신
동적popupmenu를 제 프로그램에 적용하여 보았습니다.
선언을 하고 구현을 하기까지는 했는데....
참 어렵네요.
제가 질문드린 PopupMenu는 그야말로 동적으로 생성되기 때문에
그 PopupMenu.Items.Count가 가변적일 수 밖에 없습니다.
가변적이라면 Items[i].Name 또한 알 수가 없을거구요.(N1,N2,..를 사용하나요?)
그래서 TMenuItem.OnClick을 사용할 수 있는 방법을 도통 모르겠습니다.
지금까지는 정적으로 PopupMenu Component를 사용하여 Object Inspector에서 작업을
해 왔기에 불편한 점을 몰랐지만 TMenuItem의 Items[i].Name을 알 수 없어
그 Name에 해당하는 메뉴에 대한 OnClick Event를 설정할 수가 없더라구요.

procedure OnSubMenuClick(Sender: TObject);  // 선언
.....
procedure TOptionForm.OnSubMenuClick(Sender: TObject);
begin
        ShowMessage(PopupMenu.Items[tmp_Index].Name + ' Clicked!!');
end;


for i := 0 to PopupMenu.Items.Count - 1 do
begin
        tmp_Index := i;         // Tmp_Index : Global 변수
        PopupMenu.Items[i].Name.OnClick := OnSubMenuClick;
end;
위와 같은 방법을 써야 하는지요...
그렇다면 위의 for문은 어느 procedure에 적용해야 할까요?
혹시 제가 모르고 있지만 해결할 수 있는 방법을 없는지요?
정말 송구스럽지만 조금만 더 자세한 사용법을 부탁드립니다.
어려우시면 그렇게 사용하게끔 구현한 소스가 있는 인터넷 사이트를 추천해주시면
정말 감사하겠습니다.
어려운 부탁을 드려서 죄송합니다.
항상 델파이 사용자에게 많은 도움주신데 감사를 드리며 염치없는 델초보 드림.


+ -

관련 글 리스트
4107 >질문< 다시 PopupMenu에 대한 재질문입니다... hwinet 1126 1998/08/20
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.