制作一個交互式的屏幕保護_第1頁
制作一個交互式的屏幕保護_第2頁
制作一個交互式的屏幕保護_第3頁
制作一個交互式的屏幕保護_第4頁
制作一個交互式的屏幕保護_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、制作一個交互式的屏幕保護標題: Make an in teractive scree n saver作者:Calvin_Hsia時間:2004年10月4日,星期一,1:24 PM翻譯:xinjie許多屏幕保護,在存在任何鼠標或鍵盤動作時都會被終止,但,屏幕保護畢竟是一個程序: 它可以針對輸入為所欲為。下面40行示例代碼制作了一個Visual FoxPro 屏幕保護,它是由一個表單和其中的一個textbox構(gòu)成。最后,在資源管理器中,在TEST.SCR 上右擊鼠標,選擇安裝,以便將其作為一個屏幕保護來進行安裝。你甚至可以將VFP的EXE拷貝成SCR,以將其作為一個屏幕保護來安裝!當(dāng)屏幕保護程序處

2、于活動狀態(tài)時(參看前面的博客內(nèi)容:立刻開始你的屏幕保護程序?。?,你可以在textbox中鍵入命令,這很像你在VFP的命令窗口中來執(zhí)行。如果你做了一個一個帶有密碼保護的屏幕保護程序,它可以運行在不同的桌面(或位置): Alt-Tab允許你在特殊桌面中運行的應(yīng)用程序間進行切換。在textbox中試著鍵入下面的內(nèi)容!/n taskmgr現(xiàn)在,你可以使用 Alt-Tab在兩個任務(wù)間進行切換:任務(wù)管理器和屏幕保護程序。在textbox中,試著依次鍵入并執(zhí)行下面的三行代碼:PUBLIC xx= CREATEOBJECT (word.application)x. visible = 1我自己的屏幕保護程序可

3、以隨意的顯示我收藏的15000張照片:使用者(我的家庭成員)可以使它與照片程序相結(jié)合(照片程序:來回的看,查找,等等)。ERASE test.*TEXT TO myvar TEXTMERGE noshowPROCEDUREtest(parm1,parm2,parm3)PUBLIC oScree nSavernotIF parm1=/p&previewmode in the config dlog boxsupportedRETURNENDIFoScree nSaver=oScree nSaver.ON KEY LABELREAD eve ntsquitNEWOBJECT(myform)show

4、 ()f4 clear eve ntsDEFINE CLASSmyform as FormShowWindow=2 & in desktopADD OBJECT txtCmd as textbox WITH;width =SYSMETRIC ( 1)- 100 , left =100 , height =30 ,;select onentry=1 ,;fontsize=14, fontname =verdanaPROCEDURE in itthisform. Width =SYSMETRIC ( 1)thisform. Height =SYSMETRIC (2)PROCEDURE txtCmd

5、. validcCmd= ALLTRIM (this . value )IF LEN (cCmd) 0try& cCmdthis . valueCATCH TOoErrthis.value =oErr. messagethis.selectonentryENDTRYENDIFENDDEFINEENDTEXTSTRTOFILE (myvar,test.prg)STRTOFILE (screen=off,config.fpw)MODIFY PROJECTtestnowait_vfp .ActiveProject.Files . Add (test.prg)_vfp .ActiveProject.F

6、iles . Add (config.fpw)_vfp .ActiveProject.CloseBUILD EXE testFROM testERASE config.fpw*!/n testCOPY FILE test.exe TO test.scr!start .& start Explorer in the curdir立刻開始你的屏幕保護程序!標題:Start your Screen Saver NOW!作者:Calvin Hsia時間:2004年10月4日,星期一,1:00 PM翻譯:xinjie現(xiàn)在,拉斯維加斯發(fā)展中國家標準化委員會會議已經(jīng)結(jié)束,這里,我將貼岀我參加會議的基 本內(nèi)容

7、和相關(guān)代碼。我將示范如何設(shè)置一個簡單的VFP屏幕保護。要測試它,立刻來調(diào)用這些代碼是必要的序。然而,它并不能用簡單的方式立刻開始運行屏幕保護。你可以使用WIN+L快捷鍵來鎖定計算機,但隨后岀現(xiàn)的是系統(tǒng)登錄的界面。你可以在VFP的命令窗口運行下面的代碼來查看已經(jīng)注冊的屏幕保護程序。!start desk.cpl這里,有一些代碼,可以使當(dāng)前設(shè)定的屏幕保護程序立刻運行。*立刻開始運行屏幕保護# defi ne WM_SYSCOMMAND 0x0112#defi ne SC_SCREENSAVE 0xF140DECLARE in tegerGetDesktopWi ndow IN WIN32APIDE

8、CLARE in tegerSen dMessageIN WIN32API ;in teger hWnd,;in tegermsg,;in tegerwParam,;in tegerlParamSen dMessage(GetDesktopWi ndow(),WM_SYSCOMMAND,SC_SCREENSAVE,0)當(dāng)然,你可以用這些代碼來創(chuàng)建一個式:EXE ,并且,在你的開始菜單中為它創(chuàng)建一個快捷方*立刻開始屏幕保護程序TEXT TO myvar TEXTMERGE noshow#defi neWM_SYSCOMMAND 0x0112#defi neSC_SCREENSAVE0xF140D

9、ECLARE in tegerGetDesktopWi ndowIN WIN32APIDECLARE in tegerSen dMessageIN WIN32API ;in teger hWnd ,;in tegermsg,;in tegerwParam,;in tegerlParamSen dMessage(GetDesktopWi ndow(),WM_SYSCOMMAND,SC_SCREENSAVE,0)ENDTEXTSTRTOFILE (myvar,SSaver.prg)STRTOFILE (screen=off,config.fpw)MODIFY PROJECT SSaver no w

10、ait_vfp.ActiveProject.Files.Add(SSaver.prg)_vfp.ActiveProject.Files.Add(config.fpw)_vfp .ActiveProject.Build(ssaver.exe)_vfp.ActiveProject.Close*!/n SSaver*這里在開始菜單創(chuàng)建一個指向EXE的快捷方式LOCAL oSh as WScript. ShelloSh= CREATEOBJECT (WScript.Shell)cStartMe nu=oSh.SpecialFolders(StartMe nu)LOCAL oScut as WSCRIP

11、T.WshShortcutoScut=osh.CreateShortcut(cStartMe nu+ssaver.l nk)oScut.Descripti on= VFP Scree n saver starteroScut.Hotkey=CTRL+ALT+SHIFT+S*oScut.Ic on Locati on=oScut.TargetPath= SYS( 5)+ CURDIR ()+ssaver.exeoScut. Save你可以使用注冊表或WMI來列岀屏幕保護程序:*使用WMI列出屏幕保護程序strComputer =.objWMIService = GetObject(wi nm g

12、mts: + strComputer + rootcimv2)colltems = objWMIService.ExecQuery(Select * from Win 32_Desktop)For Each objltem in colltems? Screen Saver Secure: +TRANSFORM(objltem.Scree nSaverSecure)?,objltem.Scree nSaverExecutable,objItem.Scree nSaverTimeoutNext這個代碼使用 SystemParameters Info來控制屏幕保護程序。如果你的應(yīng)用程序需要超過屏幕

13、保護運行的時間,或者你想完全控制應(yīng)用,或者你想在沒有屏幕保護的時候顯示UI,你可以禁用它。#defi neSPI_GETSCREENSAVETIMEOUTOxOOOE#defi neSPI_SETSCREENSAVETIMEOUTOxOOOF# defi neSPI_GETSCREENSAVEACTIVE0x0010#defi neSPI_SETSCREENSAVEACTIVE0x0011#defi ne SPI_GETSCREENSAVERRUNNING 0x0072#defi neSPI_SETSCREENSAVERRUNNING0x0061#defi ne SPI_SCREENSAVER

14、RUNNING SPI_SETSCREENSAVERRUNNING#defi neSPIF_SENDWININICHANGE 0x0002?Screen Saver is+IIF (nval= 0, Not,)+ active.,DATETIME ()DECLARE in tegerSystemParametersl nfoINWIN32API ;in tegeruiActio n,;in tegeruiParam,;in teger pvParam ,;in tegerfWinininval= 0SystemParametersl nfo(SPI_GETSCREENSAVEACTIVE,0,

15、 nV al, 0)附加其他的代碼,你就可以自定義瀏覽器,例如增加特別喜歡的tabbed 頁。附加其他的代碼,你就可以自定義瀏覽器,例如增加特別喜歡的tabbed 頁。4)=6, 1,0)& 6=YES0, 0)fEnable =IIF ( MESSAGEBOX(Enable screen saver?,SystemParametersl nfo(SPI_SETSCREENSAVEACTIVE,fE nable ,附加其他的代碼,你就可以自定義瀏覽器,例如增加特別喜歡的tabbed 頁。nval= 0SystemParametersI nfo(SPI_GETSCREENSAVEACTIVE,0

16、, nV al, 0)?Screen Saver is+IIF (nval=0, Not,)+ active.,DATETIME ()ns= SECONDS()DO WHILE SECONDS ()-ns 60 AND INKEY ( 1)= 0WAIT WINDOW NOWAIT TRANSFORM (INT ( SECONDS()-ns)ENDDO在你的桌面上放置一個 WEB瀏覽器標題:put a web browser on your desktop作者:Calvin_Hsia時間:2004 年8月20日,星期五,12:54 PM翻譯:xinjie僅僅需要少量的代碼,就可以在你的VFP桌

17、面背景上放置一個全功能的自定義WEB瀏覽as如果你還沒有運行 VFP9的beta版,那么就移去下面代碼中textbox 的autocomplete屬性設(shè)置。Always On Bottom用來設(shè)置瀏覽器放置在其他VFP窗口下,所以,它并不妨礙你使用VFP。即使我在其中播放視頻,它仍舊會顯示在VFP的桌面上。Bin dEve nt允許當(dāng)使用者調(diào)整VFP桌面尺寸時,允許表單使用鉤子來調(diào)整表單的尺寸。(VFP桌面瀏覽器自從 VFP5還是6開始,就可以實現(xiàn)了:至少有六年了?。└郊悠渌拇a,你就可以自定義瀏覽器,例如增加特別喜歡的tabbed 頁。PUBLIC oxox= NEWOBJECT(myfo

18、rmx)BINDEVENT ( _screen ,resize,ox,resize)ox. showDEFINE CLASS myformx as FormADD OBJECTtxtURL as textbox WITHwidth =400, value =, autocomplete =3ADD OBJECT cmdRefreshas comma ndbutton WITHcaptionleft =400, height =20ADD OBJECT cmdBack as comma ndbutton WITHcaptionleft=475, height=20ADD OBJECT cmdForwardas comma ndbutton WITHcaptionleft=550, height=20ADD OBJECT oweb as cweb WITH top =30width =800height =800always on bottom =.t.allowoutput =.f.titlebar =0PROCEDURE in itthis.oweb. width =thisform . Widththisform. resize-2this.oweb. height =thisform . height - thisform .txtU

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論