Welcome

首页 / 软件开发 / Delphi / Delphi设计PhotoShop型弹出菜单

Delphi设计PhotoShop型弹出菜单2007-10-15 电脑报 二羊照开大家都知道,使用Delphi的TPopupMenu构件可以制作弹出式菜单。但是我们如何才能制作出类似Photoshop中各种样式的弹出式菜单呢?(比如,Photoshop的笔刷形状选择菜单,见图)

制作方法如下:

1.打开Delphi, 在Form1中放置一个TButton构件。

2.新建一个窗体,使用默认名字Form2。

3.将Form2的BorderStyle属性设置为bsNone,这样将会去掉窗体的标题栏和边框。

4.在Form2中加入TPanel构件Panel1,将Panel1的BevelInner和BevelOuter属性设置为bvRaised,将Align属性设置为alClient。用Panel1的边框来作为菜单窗体的边框。

5.在Unit1的Implementation部分的uses中加入Unit2。

6.双击Form 1中的按钮构件Button1,添加如下代码:

procedure TForm1.Button1ClickSender TObject
var
ShowingPoint TPoint
begin
GetCursorPosShowingPoint // 得到光标的当前坐标
Form2.Left = ShowingPoint.X // 让Form2在当前光标处显示
Form2.Top = ShowingPoint.Y
Form2.Show
end

7.在Form2的OnDeactivate事件下添加如下代码:

procedure TForm2.FormDeactivateSender TObject
begin
Close // 当窗体失去焦点后,关闭自己。
end

8.按F9键运行程序,双击Button1后,Form2就会像弹出菜单一样显示出来,单击Form1的任意处,Form2将会自动关闭。接下来朋友们就可以在Form2上任意设计自己的弹出菜单了。

以上程序在Windows 2000 + Delphi 5中测试通过。