- 作者:zhaozj
- 发表时间:2020-12-23 10:38
- 来源:未知
对于表单的设计我们一般用到的主要有以下几种: 1.启动画面式的表单。如VFP或WORD等的启动画面,上面有使用者、使用单位、版权信息等,如下图:
对于这样的表单,我们可以进行如下操作:(1)在表单的load事件过程中加入如下代码,调用win32API函数。public username,usercomp,titletimedeclare integer RegOpenKeyEx in Win32API;integer nkey,string @csubkey,integer nreserved,;integer naccessmask,integer @nresultdeclare integer RegQueryValueEx in Win32API;integer nkey,string cvaluename,integer nresered,;integer @ntype,string @cbuffer,integer @nbuffersizedeclare integer RegCloseKey in Win32API;integer nkeyusername=usercomp=lnresult=0buffer=space(128)buffersize=len(buffer)lnerror=regopenkeyex(-2147483646,Software/microsoft/windows/currentversion,0,1,@lnresult)if lnerror=0lntype=0buffer=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)endiflntype=0buffer=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)endifendif=regclosekey(lnresult)在表单中增加label1(用户名)和label2(用户单位)两个标签,在label1的ini事件中加入:this.caption=username语句,在label2中加入:this.caption=usercomp语句。在init事件中加入如下语句:public nn &&设置计时器的初值nn=0set bell to 'welcome.wav',2 &&设置启动时的启动音乐,如果你的机器没有声卡,只是响铃 ??chr(7) &&一次。
(2)再对表单的属性进行设置。Alwaysontop=.t.Autocenter=.t.BorderStyle=1Caption=''Closable=.f.ControlBox=.f.Desktop=.f.Maxbutton=.f.Minbutton=.f.Movable=.f.Picture='begin.bmp' &&设置的此背静图象和该表单的大小一样ShowWindow=.t.这样设置的表单是一个没有标题的单线方框。(3)在表单中加入一个计时器timer1,编写计时器的Timer event过程nn=nn+1if nn=45release thisformclear eventEndif这样表单在启动后停留一下后自动关闭。(4)在表单的Click事件过程.release thisformclear event这样在启动后,如果用户不想等待画面的停留,可以在启动画面上单击表单,以快速进入程序画面。(5)编写表单的unload事件。set bell toclear dells2.关于画面的设计。现在大型程序中一般都有自己的关于画面,下面是一个简单的例子,只是少了系统信息一项。画面如下: