⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 在vfp中制做异型窗口.txt

📁 Vfp 文档 一些经典编程文章 可供初学者学习编程时使用
💻 TXT
字号:
在VFP中制做异型窗口
(作者:周鸣扬 2000年09月04日 11:50)

  制做异型窗口听起来好象只是在VB、VC程序设计中才能够做到的。但是,在VFP中,只要你灵活运用API函数,这并不是一件很难实现的事情。通过本文的介绍,你一定能够发现VFP程序的强项不仅仅是数据处理,在程序界面设计方面也可以和其他的编程语言相媲美。 

  一、实现原理 

  在VB、VC程序的设计中,如果想要改变窗口的形状,通常会通过对SetWindowRgn的调用来达到目的。SetWindowRgn函数能够将窗口设定成任意形状。该函数的调用格式如下: 

  int SetWindowRgn( HWND hWnd, HRGN hRgn, BOOL bRedraw ) 

  其中各参数的含意为: 

  hWnd:欲改变窗口的句柄 

  hRgn:窗口的显示区域 

  bRedraw:指明窗口在被改变显示区域之后是否需要重绘,通常情况下该值为真。 

  通过上面对SetWindowRgn函数的介绍,我们可以看出,在VFP中要想改变窗口的形状,需要知道VFP窗口的句柄。在VFP中要想直接得到有关窗口的情况是很困难的,因此必须利用API例程库。VFP自带的API例程库“Foxtools.fll"提供了对窗口操作的相关函数。本文中能够用到的例程有_WOnTop()和_WhToHwnd()两种,其中_WOnTop()是用来获得顶层窗口的句柄,_WhToHwnd()返回指定窗口的句柄。这两个API例程的调用格式很简单,这里就不再详细介绍了。 

  二、实现过程 

  有了上面的认识之后,我们便可以试着去设计异型窗口的程序了。设计步骤如下: 

  1.新建一表单Mult_shape,按表1设置表单的属性。 

表1 属性名
 设置值
 备  注
 
AutoCenter
 .T.
 自动居中
 
BackColor
 0,0,160
 蓝色背景
 
BorderStyle
 No Border
 窗口无边框
 
ControlBox
 .F.
 去掉表单的最大化、最小化、恢复按钮
 
Caption
 圆形窗口
  
 
FillColor
 128,255,0
  
 
ShowWindow
 2-as Top

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -