16、如何避免程式重復(fù)執(zhí)行?(偵測是否存在前一副本,若有,則結(jié)束目前新啟動的程式)
使用者在啟動程式后,有時會將程式縮小在工作列上,之后要用時,又會重新啟動一次程式,資料庫程式有時會因此造成資料錯亂!
若您不希望使用者重復(fù)啟動程式,您可以使用 APP 物件來判斷,方法如下:
Private Sub Form_Load()
If App.PrevInstance Then ‘檢視前一版本
MsgBox "此程式已經(jīng)在執(zhí)行中!", 48
End
End If
End Sub
17、如何讓一個 App 永遠保持在最上層 ( Always on Top )
請在聲明區(qū)中加入以下聲明
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter
As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Const SWP_NOMOVE = &H2 ‘不更動目前視窗位置
Const SWP_NOSIZE = &H1 ‘不更動目前視窗大小
Const HWND_TOPMOST = -1 ‘設(shè)定為最上層
Const HWND_NOTOPMOST = -2 ‘取消最上層設(shè)定
Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
‘將 APP 視窗設(shè)定成永遠保持在最上層
SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, FLAGS
‘取消最上層設(shè)定
SetWindowPos Me.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, FLAGS
18、表單配置視窗和解析度
這個地方不是要告訴您如何寫出一支程式,會自動根據(jù)使用者熒幕的解析度調(diào)整 Form 及各控制項的大小,也就是適用于各種解析
度的程式。那是另一個主題!
由于我在集團式的公司資訊中心上班,在我的開發(fā)過程中,我的使用者依不同公司別,分成幾個族群,有的公司都是使用
640x480 的解析度,有的都用 800x600,設(shè)計公司則是 1024x768,為了替這些公司開發(fā)軟件,在 VB5.0 以前,寫各家公司的
程式以前就必須先調(diào)整熒幕的解析度 (否則在解析度 800x600 的電腦上開發(fā)的程式,在 640x480 解析度的電腦中執(zhí)行時,右方
和下方的畫面會跑出熒幕外面),有的電腦一改變解析度就必須重新開機,更是麻煩!
VB5.0 以后,VB 多提供了一個功能,就是【表單配置視窗】,從此以后,您可以在高解析度的熒幕中,開發(fā)低解析度的程式,要
怎么做呢? 《假設(shè)您的電腦解析度是 1024x768》
很簡單!在【表單配置視窗】上的熒幕上按滑數(shù)右鍵,選擇【解析度】。看到了嗎!在【表單配置視窗】上的熒幕上,出現(xiàn)了二個
虛線框,上面各標明了 640x480 及 800x600。好了!現(xiàn)在您可以開始開發(fā)各種不同解析度的系統(tǒng)了!
例如您要開發(fā)的系統(tǒng),解析度是 640x480,您只要注意不要讓您的表單超出 640x480 的虛線框就可以了!
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。