VisualBasic編程中的雕蟲小技五則
一、調試程序進入死循環怎么辦?
程序在制作過程中不斷地進行調試是觀察其正確性、穩定性等的手段之一,程序員可以籍此修改、完善自己的程序。有時因為算法上的錯誤,程序進入死循環,調試中的程序和VB編輯環境均無反應,這時很多人會按下Ctrl+Alt+Del結束任務。這樣做只有退出VB,其結果是可想而知的!
其實大可不必這么做。下一次真的進入死循環的話,試一試按下Ctrl+Pause(有些鍵盤此鍵標為Break)!好了,說聲謝天謝地——哦,不,說聲感謝土人吧!
二、改變按鈕顏色
當自定義了窗體的背景色,是否覺得窗體上默認背景色的按鈕與窗體極不協調?我們在屬性窗口或Form_Load事件中用代碼來設置按鈕的背景色,卻發現總不認帳!
有沒有招兒?有!
把按鈕的Style屬性設為1-Graphical(圖形的)。OK,你可以隨心所欲地設置按鈕的背景顏色了。
三、讓你的程序隨Windows啟動
讓程序自啟動至少有三種方法:將程序放入程序組;利用Win.ini文件;在注冊表相關項作設置。前者過于初級,后者又不好操作,來個折中的吧,用第二種方法。
先申明寫入INI的API函數:
然后:(假設E:MySoft目錄下有個A.EXE文件)
看出來沒有?就是把要自啟動的程序放到Win.ini的[Windows]中"[Run]="后面即可。(通常,這一節總是空的,為什么不用呢?)
四、快速復制現有的控件
有時候,我們需要將一個窗體的所有控件移植到另一個窗體或另一個工程中。請點擊"編輯-全選",看見了吧:所有控件被選中。接著新建一個窗體或工程,在新窗體上單擊右鍵,選取粘貼,哈哈,奇跡發生了吧?剩下的事是調整一下窗體的大小了。
如若只復制部分控件呢?也有辦法:按Ctrl鍵不放,鼠標單擊所需控件,確認后松開Ctrl鍵,右鍵單擊選中控件中的一個,接下來你該知道怎么做了吧?
——必須注意的是,要保證在左邊的General工具欄里已經有了所要復制的控件,否則復制失敗。
五、一次性顯示數據庫中指定的字段
假設我們已經在窗體上繪制了如下控件:Data,Label,Command Button,TextBox各一個。其中,TextBox用于顯示數據庫指定表中指定字段的全部內容,所以應將其MultiLine屬性設為True,必要的話加上滑動桿。Data控件自然要和數據庫聯接好,并記得將Label控件與字段捆綁起來。詳細代碼如下:
程序在制作過程中不斷地進行調試是觀察其正確性、穩定性等的手段之一,程序員可以籍此修改、完善自己的程序。有時因為算法上的錯誤,程序進入死循環,調試中的程序和VB編輯環境均無反應,這時很多人會按下Ctrl+Alt+Del結束任務。這樣做只有退出VB,其結果是可想而知的!
其實大可不必這么做。下一次真的進入死循環的話,試一試按下Ctrl+Pause(有些鍵盤此鍵標為Break)!好了,說聲謝天謝地——哦,不,說聲感謝土人吧!
二、改變按鈕顏色
當自定義了窗體的背景色,是否覺得窗體上默認背景色的按鈕與窗體極不協調?我們在屬性窗口或Form_Load事件中用代碼來設置按鈕的背景色,卻發現總不認帳!
有沒有招兒?有!
把按鈕的Style屬性設為1-Graphical(圖形的)。OK,你可以隨心所欲地設置按鈕的背景顏色了。
三、讓你的程序隨Windows啟動
讓程序自啟動至少有三種方法:將程序放入程序組;利用Win.ini文件;在注冊表相關項作設置。前者過于初級,后者又不好操作,來個折中的吧,用第二種方法。
先申明寫入INI的API函數:
| Declare Function WritePrivateProfileString Lib _ "kernel32" Alias "WritePrivateProfileStringA" _ (ByVal lpApplicationName As String, ByVal lpKeyName _ As Any, ByVal lpString As Any, ByVal lpFileName As _ String) As Long |
然后:(假設E:MySoft目錄下有個A.EXE文件)
| Dim WriteIni as String WriteIni = WritePrivateProfileString("Windows", "Run", "E:MySoftA.exe", "C:Windowswin.ini") |
看出來沒有?就是把要自啟動的程序放到Win.ini的[Windows]中"[Run]="后面即可。(通常,這一節總是空的,為什么不用呢?)
四、快速復制現有的控件
有時候,我們需要將一個窗體的所有控件移植到另一個窗體或另一個工程中。請點擊"編輯-全選",看見了吧:所有控件被選中。接著新建一個窗體或工程,在新窗體上單擊右鍵,選取粘貼,哈哈,奇跡發生了吧?剩下的事是調整一下窗體的大小了。
如若只復制部分控件呢?也有辦法:按Ctrl鍵不放,鼠標單擊所需控件,確認后松開Ctrl鍵,右鍵單擊選中控件中的一個,接下來你該知道怎么做了吧?
——必須注意的是,要保證在左邊的General工具欄里已經有了所要復制的控件,否則復制失敗。
五、一次性顯示數據庫中指定的字段
假設我們已經在窗體上繪制了如下控件:Data,Label,Command Button,TextBox各一個。其中,TextBox用于顯示數據庫指定表中指定字段的全部內容,所以應將其MultiLine屬性設為True,必要的話加上滑動桿。Data控件自然要和數據庫聯接好,并記得將Label控件與字段捆綁起來。詳細代碼如下:
| Private Sub Command1_Click() Text1.Text = Label1.Caption '獲取第一個記錄 Dim I As Integer, N As Integer '兩個計時器 Data1.Recordset.MoveLast '移到最后:獲取記錄總數 I = Data1.Recordset.RecordCount '給I變量賦值 Data1.Recordset.MoveFirst '移回第一個記錄 '獲取第一個記錄以后的所有記錄 For N = 1 To I Data1.Recordset.MoveNext Text1.Text = Text1.Text + vbCrLf + Label1.Caption Next N Command1.Enabled = False '令按鈕無效:避免再點擊出錯 End Sub |