Q&A

  • 메인메뉴에서 서브메뉴의 동적생성..
메인메뉴에서요...



어떤 메뉴를 선택하면 아래 설정된 메뉴들이 나오고... 거기서 또



서브메뉴를 선택하면 옆으로 화살표 나오면서 해당되는 서브메뉴가 나오잖아요..



그걸 동적으로 생성하고 싶은데... 어떡하면 좋을까요?

3  COMMENTS
  • Profile
    Black}{ole 2001.10.30 05:30
    안녕하세요. ^^

    예전에 팁란에 올렸던거 올립니다. 참고하세요.













    PopupMenu 동적생성 간단하게??



    PopupMenu1 := TPopupMenu.Create(Self);

    Item := TMenuItem.Create(PopupMenu1);

    Item.Caption := 'First Menu';

    Item.OnClick := MenuItem1Click;

    PopupMenu1.Items.Add(Item);

    Item := TMenuItem.Create(PopupMenu1);

    Item.Caption := 'Second Menu';

    Item.OnClick := MenuItem2Click;

    PopupMenu1.Items.Add(Item);

    Item := TMenuItem.Create(PopupMenu1);

    Item.Caption := 'Third Menu';

    Item.OnClick := MenuItem3Click;

    PopupMenu1.Items.Add(Item);



    Item := TMenuItem.Create(PopupMenu1);

    Item.Caption := '-';

    PopupMenu1.Items.Add(Item);

    Item := TMenuItem.Create(PopupMenu1);

    Item.Caption := 'Fourth Menu';

    Item.OnClick := MenuItem4Click;

    PopupMenu1.Items.Add(Item);



    보통 PopupMenu를 동적으로 생성할려면.. 이런식으로.. 하는뎅..

    이걸 간단하게 할수 있더군요.



    PopupMenu1 := TPopupMenu.Create(Self);

    with PopUpMenu1.Items do

    begin

    Add(NewItem('First Menu',0,False,True,MenuItem1Click,0,'MenuItem1'));

    Add(NewItem('Second Menu',0,False,True,MenuItem2Click,0,'MenuItem2'));

    Add(NewItem('Third Menu',0,False,True,MenuItem3Click,0,'MenuItem3'));

    Add(NewLine); // Adds a separator bar

    Add(NewItem('Fourth Menu',0,False,True,MenuItem4Click,0,'MenuItem4'));

    end;



    아님 이렇게도 가능합니다.



    Item1 := NewItem('First Menu',0,False,True,MenuItem1Click,0,'MenuItem1');

    Item2 := NewItem('Second Menu',0,False,True,MenuItem2Click,0,'MenuItem2');

    Item3 := NewItem('Third Menu',0,False,True,MenuItem3Click,0,'MenuItem3');

    Item4 := NewLine; // Adds a separator bar

    Item5 := NewItem('Fourth Menu',0,False,True,MenuItem4Click,0,'MenuItem4');

    PopupMenu1 := NewPopupMenu(Self, '', paLeft, True, [Item1, Item2, Item3, Item4, Item5]);



    NewItem 펑션을 이용한건뎅.. 이외에도.. NewMenu, NewSubMenu,

    등이 있는뎅.. 자세한건 도움말을 참고하세요.



  • Profile
    나옹이 2001.10.30 06:52
    팝업메뉴는.... 음.. 잘 알았습니다.



    근데 메인메뉴에서는 어케 할까요?



    점.. 감이 오질 않네욤...





    Black}{ole wrote:

    > 안녕하세요. ^^

    > 예전에 팁란에 올렸던거 올립니다. 참고하세요.

    >

    >

    >

    >

    >

    >

    > PopupMenu 동적생성 간단하게??

    >

    > PopupMenu1 := TPopupMenu.Create(Self);

    > Item := TMenuItem.Create(PopupMenu1);

    > Item.Caption := 'First Menu';

    > Item.OnClick := MenuItem1Click;

    > PopupMenu1.Items.Add(Item);

    > Item := TMenuItem.Create(PopupMenu1);

    > Item.Caption := 'Second Menu';

    > Item.OnClick := MenuItem2Click;

    > PopupMenu1.Items.Add(Item);

    > Item := TMenuItem.Create(PopupMenu1);

    > Item.Caption := 'Third Menu';

    > Item.OnClick := MenuItem3Click;

    > PopupMenu1.Items.Add(Item);

    >

    > Item := TMenuItem.Create(PopupMenu1);

    > Item.Caption := '-';

    > PopupMenu1.Items.Add(Item);

    > Item := TMenuItem.Create(PopupMenu1);

    > Item.Caption := 'Fourth Menu';

    > Item.OnClick := MenuItem4Click;

    > PopupMenu1.Items.Add(Item);

    >

    > 보통 PopupMenu를 동적으로 생성할려면.. 이런식으로.. 하는뎅..

    > 이걸 간단하게 할수 있더군요.

    >

    > PopupMenu1 := TPopupMenu.Create(Self);

    > with PopUpMenu1.Items do

    > begin

    > Add(NewItem('First Menu',0,False,True,MenuItem1Click,0,'MenuItem1'));

    > Add(NewItem('Second Menu',0,False,True,MenuItem2Click,0,'MenuItem2'));

    > Add(NewItem('Third Menu',0,False,True,MenuItem3Click,0,'MenuItem3'));

    > Add(NewLine); // Adds a separator bar

    > Add(NewItem('Fourth Menu',0,False,True,MenuItem4Click,0,'MenuItem4'));

    > end;

    >

    > 아님 이렇게도 가능합니다.

    >

    > Item1 := NewItem('First Menu',0,False,True,MenuItem1Click,0,'MenuItem1');

    > Item2 := NewItem('Second Menu',0,False,True,MenuItem2Click,0,'MenuItem2');

    > Item3 := NewItem('Third Menu',0,False,True,MenuItem3Click,0,'MenuItem3');

    > Item4 := NewLine; // Adds a separator bar

    > Item5 := NewItem('Fourth Menu',0,False,True,MenuItem4Click,0,'MenuItem4');

    > PopupMenu1 := NewPopupMenu(Self, '', paLeft, True, [Item1, Item2, Item3, Item4, Item5]);

    >

    > NewItem 펑션을 이용한건뎅.. 이외에도.. NewMenu, NewSubMenu,

    > 등이 있는뎅.. 자세한건 도움말을 참고하세요.

    >

  • Profile
    Black}{ole 2001.10.30 09:44
    팝업메뉴나, 메인메뉴나 똑같습니다.

    위 소스를 메인메뉴에서 같이 적용해보세요.

    그럼..20000.