Q&A

  • 윈도우의 시작버튼과 같은 기능을 만들려고 합니다
안녕하세요.
윈도우의 시작버튼과 같은 기능을 만들려고 합니다.
데이타 베이스에서 자료을 읽어와 팝업메뉴에 리스트를 만들고
또 그 하위데이타를 읽어와 각 메뉴의 서브메뉴로 만들려고 합니다.
즉 관계된 콤보박스 3개의 기능을 팝업메뉴로 만들려고 합니다.
먼저 코딩으로 팝업 메뉴의 리스트를 삽입시키는 방법과
그 하위 서브메뉴를 만들어 하위 데이타를 입력시키는 방법을
알려주세요.
고수님들 꼭 좀 부탁합니다.
1  COMMENTS
  • Profile
    Black}{ole 2002.02.23 02:23
    안녕하세요. ^^

    팁란에 예전에 올렸던게.. 있었는뎅.. 다음부터 질문전에 팁란이나 q/a란에서
    검색을 해보신후에.. 올려주세요. ^^a


    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,
    등이 있는뎅.. 자세한건 도움말을 참고하세요.

    그럼..20000.