创建Photoshop式浮动窗口应用程序

刘健佑

刘健佑

2016-02-19 18:51

下面是个创建Photoshop式浮动窗口应用程序教程,撑握了其技术要点,学起来就简单多了。赶紧跟着图老师小编一起来看看吧!
用过Photoshop的朋友一定对它的那些方便的浮动面板记忆犹新,其实这些面板就是一个个的小窗体,但这些小窗体都放在Photoshop的主窗体上(不是存在主窗体中),有自己的标题栏、最小化按钮及最大化按钮。但它们与MDI程序不同的是,他们可以拖到主窗体外,更重要的是工作中所有这些面板窗体与主窗体最处于激活状态。
  
  用Spy & Capture查看一下就不难发现,这些面板窗体的Parent Window都是Photoshop的主窗体(以Photoshop CS为例,主窗体的Handle是001906D8,所有面板的Parent Window指向的就是001906D8),而一般我们创建的窗体的Parent是为None的。
  
  下面的代码就为实现这种Photoshop式浮动窗口的示范:
  
  //......

  var
    Form1: TForm1;

  implementation

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  uses Unit2;

  {$R *.dfm}

  procedure TForm1.Button1Click(Sender: TObject);
  begin
    //把Form2的Parent改为Form1
    Form2 := TForm2.CreateParented(Form1.Handle);
    Form2.Show;
    //使得Form2处于激活状态
    SendMessage(Form2.Handle, WM_NCACTIVATE, Ord(True), 0);
  end;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  procedure TForm1.Button2Click(Sender: TObject);
  begin
    Form2.Close;
  end;

  procedure TForm1.FormDestroy(Sender: TObject);
  begin
    //记得加上这一句
    if Form2.Showing then Form2.Close;
  end;

  end.
  
  上面的代码就可以显示一个与Form1同处激活状态的Form2,再对Form2的BorderStyle与BorderIcons属性作一些必要的选择,就可以实现更加完美的效果!

展开更多 50%)
分享

猜你喜欢

创建Photoshop式浮动窗口应用程序

编程语言 网络编程
创建Photoshop式浮动窗口应用程序

使用VBA创建应用程序

autocad教程
使用VBA创建应用程序

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

为VB应用程序定制浮动提示

Delphi
为VB应用程序定制浮动提示

4.4 创建移动Web应用程序

Web开发
4.4 创建移动Web应用程序

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

使用VBA创建应用程序教程

autocad教程
使用VBA创建应用程序教程

Java应用程序中创建图像

Java JAVA基础
Java应用程序中创建图像

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

无论技术高低 利用HTML优化加快网页速度

无论技术高低 利用HTML优化加快网页速度

在Windows操作系统中改变文件打开方式

在Windows操作系统中改变文件打开方式
下拉加载更多内容 ↓