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

📄 vfp制作软件封面.txt

📁 Vfp 文档 一些经典编程文章 可供初学者学习编程时使用
💻 TXT
字号:
Visual FoxPro 中制作软件封面

    一个好的软件还需要有一个漂亮的封面,用Visual FoxPro 编制应用程序时往往会忽视这一问题。在Visual FoxPro 5.0中我们一样可以制作出如同微软的WORD、POWERPOINT等软件的漂亮的封面。

    一、创建表单集。Visual FoxPro的应用程序一般都至少有一个表单,进入主表单中,选择‘表单’菜单中的‘创建表单集’,创建一个表单集(FORMSET1)。需要注意的是,如果你的表单中的自定义的属性、方法等,当创建表单集之后,这些属性和方法会升级为表单集的属性和方法,原程序中的调用则需要进行修改。设置表单集的Windowtype属性为1-模式。

    二、制作封面表单。选择‘表单’菜单中的‘添加新表单’,建立一个新的表单。设置它的Name属性为“FormStart",AlwaysOnTop属性为.T.,AutoCenter属性为.T.,BorderStyle属性为2-固定对话框,Caption属性为"",ControlBox属性为.F.,MaxButton属性为.F.,MinButton属性为.F.,Movable属性为.F.,ShowWindow属性为2-作为顶层表单,WindowType属性为1-模式。既是封面,自然要有一个漂亮的底图,此图片可自行用绘图软件制作,大小可自定,只是别忘了在底图上写清软件的名称。底图做好之后,设置封面表单的Picture属性为此图片名即可。

    三、显示用户名和用户单位。见过WORD封面的人可能都会注意到其封面上有一提示“本软件使用权属于”,其下面是安装Windows 95时输入的用户名和用户单位,通过对Windows 95的注册表的访问,在Visual FoxPro中也可以实现这一设计。

    在‘表单控件’工具条上选择‘标签’并在表单体上点击一下即可生成一个标签,设置它的Name属性为LabelTitle,Caption属性为‘本软件使用权属于:’,Autosize属性为 .T.,BackStyle属性为0-透明。相同方法再制作出两个标签,设置它们的AutoSize属性为.F.,Caption属性为“”,分别设置它们的Name属性为LabelName和LableComp,两标签的大小可自定。具体的摆放位置可视情况而定。

    四、编写相应控件过程。

FormSet1的Load过程:

_Screen.Visible = .F.

Public UserName,UserComp,TitleTime

DECLARE INTEGER RegOpenKeyEx IN Win32API ;

INTEGER nKey, STRING @cSubKey, INTEGER nReserved,;

INTEGER nAccessMask, INTEGER @nResult

DECLARE INTEGER RegQueryValueEx IN Win32API ;

INTEGER nKey, STRING cValueName, INTEGER nReserved,;

INTEGER @nType, STRING @cBuffer, INTEGER @nBufferSize

DECLARE INTEGER RegCloseKey IN Win32API ;

INTEGER nKey

UserName = ""

UserComp = ""

lnResult = 0

Buffer = SPACE(128)

BufferSize = LEN(Buffer)

lnError = RegOpenKeyEx(-2147483646, 

"Software\Microsoft\Windows\CurrentVersion", 0, 1, @lnResult)

IF lnError = 0

    lnType = 0

    Buffer = SPACE(128)

    BufferSize = LEN(Buffer)

    lnError = RegQueryValueEx(lnResult, "Registeredowner", 0, 

               @lnType, @Buffer, @BufferSize)

    IF lnError = 0 AND Buffer <> CHR(0)

        * 取得用户姓名

        UserName = LEFT(Buffer, BufferSize - 1)

    ENDIF

    lnType = 0

    Buffer = SPACE(128)

    BufferSize = LEN(Buffer)

    lnError = RegQueryValueEx(lnResult,

   "RegisteredOrganization",0,@lnType, @Buffer, @BufferSize)

    IF lnError = 0 AND Buffer <> CHR(0)

        * 取得用户单位

        UserComp = LEFT(Buffer, BufferSize - 1)

    ENDIF

ENDIF

=RegCloseKey(lnResult)

FormStart的Activate过程:

TitleTime = DATETIME()

Thisform.LabelName.Caption = UserName

Thisform.LabelComp.caption = UserComp

* 延时3秒

Do While DATETIME() - TitleTime <= 3 

Enddo

Thisformset.Release

本过程的最后一句可改为调用应用程序表单即可进入应用程序中。
返回

⌨️ 快捷键说明

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