如何用BCB做出可移动的菜单?
2008-03-08 12:47:29 来源:WEB开发网核心提示:有三种方法:一:放一个coolbar,在其上放一个toolbar,如何用BCB做出可移动的菜单?,设置toolbar的showcaptions为true,flat为true,你希望有多少项菜单就加多少个按钮,4、加一个TMainMenu,象你希望的一样添加菜单项,在上面新建一个toolbotton加入一个popupme
有三种方法:
一:
放一个coolbar,在其上放一个toolbar,设置toolbar的showcaptions为true,flat为true,在上面新建一个toolbotton
加入一个popupmenu,设置好其items
设置toolbutton的dropdownmenu为popupmenu,设置其style为BTsdropdown
但是这种方法做出来的菜单其实和你要求的并不一样。它的菜单其实是受在按钮旁边的一个小三角符号控制的。
看第二种方法:
1放一个coolbar
2在其上放两个toolbar
3在你想做成菜单的那个toolbar上放一个speedbotton
4设置speedbutton的flat为true,caption为“文件”
5加如一个popupmenu,设置其items为“打开”和“退出”
6在speedbutton的onclick事件里加入以下代码:
void __fastcall TForm1::SpeedButton1(TObejct *Sender)
{
Tpoint Pos;
TSpeedButton *Btn;
Btn = TSpeedButton(Sender);
Pos=Btn.ClientToScreen(TPoint(0,0));
Pos.y=Pos.y+Btn.Height;
PopupMenu1.Popup(Pos.x,Pos.y);
}
第三种方法:
不需要写代码。
步骤:
1、在窗口加一个TControlBar
2、在TControlBar上加一个TToolBar
3、在TToolBar上加足够的按钮(右键菜单的那种),你希望有多少项菜单就加多少个按钮。
4、加一个TMainMenu,象你希望的一样添加菜单项。
5、去掉窗口的Menu属性中的值(在属性窗口中)
6、设TToolBar属性:
ShowCaption=true
DragKind=dkDock
DragMode=dmAutomatic
Flat=true
EdgeBorder=去掉所有项
7、对TToolBar中的所有按钮的设属性:
Grouped=true
AutoSize=true
MenuItem=你希望按钮对应的菜单项
然后,一切OK!
更多精彩
赞助商链接