Q&A

  • 런 타임중에 메뉴 생성하기
안녕하세요.

궁금한게 있어서 이렇게 문의 드립니다.



밑에 있는게 소스인데여...

중간에 보시면

MainMenu1.Items[0].Items[i-1].Caption

이런 부분이 있는데... Items 가 두번이 들어가는데...

왜 이렇게 지정해야 하는지 모르겠습니다.

그리구

myITEM := TMenuITem.Create(nil)

nil값을 넣는데 왜 nil 값을 넣는지두 궁금합니다.



조그마한 대답이라도 성심껏듣겠습니다.

참고 해야할부분을 알려주셔도 좋습니다...



감사합니다.









Form1: TForm1;



implementation



{$R *.DFM}



procedure TForm1.Button1Click(Sender: TObject);

var

myITEM : TMenuITem;

i : Integer;

IsExist : boolean;





begin

IsExist := False;



for i:=1 to MainMenu1.Items[0].Count do begin

if MainMenu1.Items[0].Items[i-1].Caption = edit1.text then begin

IsExist := true;

break;

end;

end;



if not IsExist then begin

myITEM := TMenuITem.Create(nil);

myITEM.OnClick := MyClickEvent;

myITEM.caption := edit1.text;

MainMenu1.items[0].Add(myITEM);

end

else

ShowMessage('이미 존재하는 메뉴입니다.');

end;



procedure TForm1.MyClickEvent(Sender: TObject);

begin

ShowMessage(TMenuItem(Sender).Caption + '이 눌렸습니다.');

end;



end.







0  COMMENTS