打印本文 打印本文 关闭窗口 关闭窗口
Delphi设计PhotoShop型弹出菜单_开发者网络_Delphi
作者:武汉SEO闵涛  文章来源:敏韬网  点击数766  更新时间:2009/4/23 18:25:12  文章录入:mintao  责任编辑:mintao
  大家都知道,使用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中测试通过。

打印本文 打印本文 关闭窗口 关闭窗口