使用JavaScript時,有時需要偶爾執行壹次方法,比如生成網頁的UI動畫效果。這時候經常會用到setInterval或者setTimeout方法,但是因為這兩個方法都是腳本宿主模擬的定時器線程,所以通過它們調用的方法無法給它們傳遞參數。本節代碼主要使用onClick事件、setTimeout方法和alert方法。主要功能和用途如下:工具/原材料
Windows瀏覽器AdobeDreamweaver
步驟/方法
當您用鼠標單擊頁面的選項卡時,將觸發onClick事件。這個事件可以調用相應的函數作為它的事件處理程序。在函數中,它可以是任何合法的JavaScript代碼。
執行setTimeout方法時,表達式在加載並延遲指定時間後執行壹次。
alert方法有壹個參數,即您要向用戶顯示的文本字符串,它不是HTML格式的。消息框為用戶提供了壹個關閉消息框的OK按鈕,消息框是壹個模式對話框,即用戶在繼續之前必須關閉消息框。
內容類型charset = utf-8;//根據用戶名顯示歡迎消息。
函數hello(_name)
{
Alert(妳好,_ name);
}
Function_hello(_name)//創建壹個函數,返回壹個不帶參數的函數。
{
返回函數(){
妳好(_姓名);
}
}
Functionfoo()//函數:直接調用。
{
Window.setTimeout(hello(用戶名),3000);//直接調用hello函數。
}
Functionbar()//函數:間接調用
{
Window.setTimeout(_hello(用戶名),3000);//使用匿名函數為計時器傳遞參數。
}
名稱=
名稱=
運行程序後,頁面上會出現壹組按鈕。當妳點擊第壹個按鈕時,會立即彈出相應的消息框,如下圖所示。單擊確定關閉消息框,然後單擊第二個按鈕。三秒後會彈出相應的消息框,如下圖所示。
結束
有關註意事項
在函數foo()中,使用setTimeout方法延遲調用hello函數並傳入參數。事實上,這種語氣
使用是錯誤的,因為以字符串文字調用方法時,param必須是全局變量(即窗口對象上的變量);函數指針形式的調用是完全錯誤的。它把函數的返回值作為setTimeout/setInterval函數的參數,這根本不是預期的結果。
Siemens 7-200 PLC中的定時器使用中間變量來給出時間參數。如何設置中間變量的時間參數?
壹般來說,可以在上位機修改VW0的值。如果沒有上位機,可以寫壹個轉移指令給VW0賦值。
剛入門,信捷PLC和觸摸屏,了解計數器和定時器的制作方法。我可以修改觸摸屏上的參數嗎?
信捷PLC從來沒有用過。妳可以在壹些幫助下搜索它的編程軟件中計數器和定時器的用法。壹般對應壹個PLC變量,然後在觸摸屏新建壹個變量,綁定到PLC變量,修改這個變量,對應的計數器或者定時器參數就會發生變化。
555定時器數據手冊?
555定時器數據參數:
電源電壓(VCC): 4.5-16V
額定工作電流(VCC =+5v): 3-6ma。
額定工作電流(VCC =+15v):10-15ma。
最大輸出電流:200mA
最大功耗:600mW
最低工作功耗:30mW(5V),225mW(15V)。
溫度範圍:0-70°c
settimer函數的例子是什麽?
SetTimer是位於user32.dll的API函數。偶爾想做點什麽的時候可以用。使用timer的方法比較簡單,壹般是告訴Windows壹個時間間隔,然後Windows在這個時間間隔周期性的觸發程序。通常有兩種方法可以實現:發送WM_TIMER消息和調用應用程序定義的回調函數。當不需要指定定時器時,可以調用相應的KillTimer函數來銷毀指定的時鐘。函數用法:1.1使用WM_TIMER設置原型uint _ ptrsetter (hwnd hwnd,//窗口句柄UINT_PTRnIDEvent,// timer ID,當有多個定時器時,可以通過這個ID判斷哪個定時器是uintnelapse,//時間間隔以毫秒為單位。返回值:type: UINT_PTR如果函數成功,hWnd參數為0,則返回新建立的時鐘號,可以傳遞給KillTimer銷毀時鐘。如果函數成功,並且hWnd參數不為0,則返回壹個非零整數,可以將該整數傳遞給KillTimer以銷毀時鐘。如果函數失敗,返回值為零。如果您想獲得更多的錯誤信息,請調用GetLastError函數。比如setter (m _ hwnd,1,1000,null);//每1秒觸發壹次的定時器封裝在MFC程序中的CWnd類中,調用時不需要指定窗口句柄,所以SetTimer函數的原型就變成了:uint SetTimer (uintnidevent,uintnelapse,void(callback export * lpfn timer)(hwnd,uint,YINT,DWORD))使用SetTimer函數時會生成壹個定時器,函數中的nidevent指的是定時器的標識符,也就是名字。NElapse指的是時間間隔,即事件觸發的頻率。第三個參數是回調函數。在這個函數裏放上妳要做的事情的代碼,可以設置為NULL,也就是使用系統默認的回調函數。系統的默認功能是OnTimer功能。這個函數是怎麽產生的?需要在需要定時器的類中生成OnTimer函數:在ClassWizard中選擇需要定時器的類,添加WM_TIMER消息映射,OnTimer函數就會自動生成。然後給函數添加代碼,讓代碼實現函數。每隔壹段時間就會自動執行壹次。例如:setter (null,1,1000,null);NULL默認為調用1: timer的主進程名;1000:時間間隔,單位為毫秒;NULL:使用OnTimer函數。不需要定時器時調用kill timer(nIDEvent);比如:kill timer(1);1.2調用回調函數該方法首先以如下格式編寫壹個回調函數VoidcallBacktimeProc (hwnd hwnd,uintnmsg,uintmerid,dwordwtime);然後使用setter (1,100,timer proc)函數構建壹個定時器,第三個參數是回調函數的地址。添加兩個或多個定時器:繼續使用SetTimer函數。上次計時器的ID是1,這次可以是2,3,4。。。。SetTimer(2,1000,空);SetTimer(3500,空);WINDOWS將協調。當然OnTimer的函數體也會發生變化,函數體中要加入每個定時器的處理代碼:Ontimer (NID事件){switch (NID事件){case 1:.....;打破;案例2:.......;打破;案例3:......;打破;定時器事件,即定時器事件,是遊戲編程中經常用到的事件。在它的幫助下,可以產生定時執行動作的效果。在本文中,我將與您討論如何使用SetTimer()函數。1,SetTimer定義SetTimer的意思是定義壹個定時器。根據定義的窗口,在指定的窗口(CWnd)中實現OnTimer事件,從而實現相應的事件。SetTimer有兩個功能。壹個是全局函數::settimer()uint settimer(hwnd hwnd,//handleofwindowfortimersessagesuinitnivent,//Timerider Guintuelapse,//Time-out valuetimerprocptimerfunc//addressoftimerprocureprocedure);其中hWnd是指向CWnd的指針,即處理定時器事件的窗口類。說到窗口類(CWnd),我們有必要看壹下CWnd的繼承:CWnd有以下幾個子類:cframewnd、cdialog、CView、ccontrolbar等等。這也意味著可以在這些類中定義SetTimer事件。同時,CWnd中還定義了setter(),即setter()是CWnd的成員函數。CWnd的壹個子類可以調用這個函數來設置觸發器。UINTSetTimer(UINTnIDEvent,UINTnElapse,void(callback export * lpfnTimer)(HWND,UINT,UINT,DWORD));參數含義:niDEvent:指設置這個定時器的ID,也就是身份標誌,這樣在OnTimer()事件中,就可以根據不同的定時器做出不同的事件響應。該ID是壹個無符號整數。NElapse的意思是時間延遲。單位是毫秒。這意味著系統每隔壹毫秒調用OnTimer()。void(callback export * lpfnTimer)(HWND,UINT,UINT,DWORD)指定addressofapplication-suppliedtimerproccallbackfunctionthaprocessesthewm _ timer messages。如果此參數為NULL,則WM _ timermessageshareplacedintheapplication的messagequeueandhandledbythewndobject .這意味著由應用程序提供的TimerProc回調函數的地址被指定來處理這個定時器事件。如果為空,則處理定義此計時器事件的CWnd對象。他將WM_TIMER消息傳遞給這個對象,並通過實現這個對象的OnTimer()事件來處理這個定時器事件。所以,壹般來說,我們將這個值設置為NULL,並且在對象中有壹個OnTimer()函數設置計時器來處理這個事件。同樣,我們來看看KillTimer()和OnTimer()的定義:KillTimer和SetTimer()壹樣,有兩個,壹個是global:: KillTimer(),壹個是CWnd的函數。他的語句如下://全局函數boolkilltimer(hwnd hwnd,//handleofwindowthatingstallettimeruintuitevent//TimerIdentifier);//CWnd函數BOOLKillTimer(intnIDEvent);這兩個功能意味著刪除iD為nIDEVENT的定時器。讓它不再工作。其用法與SetTimer()相同。看ontimer()cwnd::ontimer AFX _ msgwidontimer(uintidievent);OnTimer()是為響應CWnd對象而生成的WM_Timer消息。NIDEvent表示響應計時器事件的ID。定時器事件的使用:通過上面的分析,我們應該非常清楚如何使用定時器事件。假設我們在視圖上繪制壹個漸變動畫。我們首先在菜單欄中添加壹個菜單項,並在這個菜單中添加壹個命令響應:pview->;SetTimer(1,1000,空);//pView是指向視圖類的指針。這裏,在視圖類中設置了壹個計時器。添加後,向視圖類添加對WM_Timer事件的響應。在OnTimer()函數中寫壹個函數來響應。定時器的精度:定時器使用時間中斷響應計時,windows的時間中斷每1/18秒觸發壹次,所以定時器的最小精度在55ms左右,低於這個時間精度就不夠了。
定時器的兩個主要參數是什麽?
計數器的兩個控制寄存器變量是TMOD和TCON。定時器插座是壹種采用芯片控制的插座產品,可以設置在特定時間段開關電源。時間設定範圍:按照設定的程序,每周或每天循環工作,1分鐘-168小時。
定時器壹直有功率輸出,沒有定時功能;“關”:定時器無功率輸出,處於關閉狀態;“自動開啟”:定時器開啟時有電源輸出,然後按照設定的程序工作;“Auto-off”:定時器開啟時,沒有電源輸出,然後按照設定的程序工作。
以當前時間為準,當前時間在設定時間段的中間,選擇“自動開機”模式;如果當前時間在設定時間段之前或之後,選擇“自動關閉”模式。