VB6

出自 ProgWiki
前往: 導覽搜尋

VB6(Visual Basic 6.0),參照:『維基百科~Visual_Basic

技術文件

相關下載

常用元件

元件名稱 檔名 路徑
Microsoft Windows Common Controls 5.0 comctl32.ocx C:\WINDOWS\system32
Microsoft Windows Common Controls 6.0 Mscomctl.ocx C:\WINDOWS\system32
Microsoft Rich Textbox Controls 6.0 Richtx32.ocx C:\WINDOWS\system32
Windows Media Platyer Wmp.dll C:\WINDOWS\system32
Microsoft FlexGrid Control msflxgrd.ocx C:\WINDOWS\system32
MSMask Msmask32.ocx C:\WINDOWS\system32
THREED32 - 32 Bit OLE Control DLL Threed32.ocx C:\WINDOWS\system32
Microsoft ActiveX Data Objects 2.1 Library msado21.tlb C:\Program Files\Common Files\system\ado
TabCtl32 Object Library Tabctl32.ocx C:\WINDOWS\system32
MSMAPI Controls Library Msmapi32.ocx C:\WINDOWS\system32
MCI OLE Control DLL Mci32.ocx C:\WINDOWS\system32
Microsoft DAO 3.6 Object Library dao360.dll C:\Program Files\Common Files\Microsoft Shared\DAO

範例

FAQ

4種字串變數定義方式

  • 定義X為1個字串(可動態長度)
Dim X As String
  • 定義X為1個字串,固定為4個字元(超長會自動切字串, 不夠長會自動補空排字元)
Dim X As String * 4
  • 定義X為1個字串陣列(0~10)
Dim X(11) As String 
  • 定義X為1個字串陣列(0~10), 且各為固定為4個字元(超長會自動切字串, 不夠長會自動補空排字元)
Dim X(11) As String * 4

對話框置中

在 Form_Load() 加入

  Left = (Screen.Width - Width) / 2
  Top = (Screen.Height - Height) / 2

文字檔分行讀取

Dim TxtFileName As String
Dim InputFile As Integer
Dim Index As Integer
Dim InputStr As String
Dim InputStr2() As String
 
InputFile = 2
TxtFileName = "Test.txt"
 
Open TxtFileName For Input As #InputFile
Do While Not EOF(#InputFile)
 
    '自檔案中讀入資料,Line Input # 所採用Chr(13) 或 Chr(13)+Chr(10) 的斷行方式
    Line Input #1, InputStr
 
    'Chr(10)的斷行方式修正
    InputStr2 = Split(InputStr, Chr(10), -1)
    For Index = 0 To UBound(InputStr2)
        InputStr = InputStr2(Index)
        If (Len(InputStr) > 0) Then
 
            '實際的作業(略)
 
        End If
    Next
Loop
Close #InputFile

OpenDatabase函數執行時跑出, "找不出可安裝的ISAM"

  • OpenDatabase 是 DAO的開啟資料庫用的函數。
  1. OpenDatabase函數的第4個參數寫錯字?("dBase IV","Text"……等)
    參照機碼 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\ISAM Formats
  2. DAO的版本問題?VB6 剛出的時候,內建DAO 3.5,對應到Jet 3.5,後來新版的Windows已不再支援Jet 3.5了,因此應該將DAO的 引用設定到 3.6,以便使用Jet 4.0 。
    在VB6裡 (專案 → 設定引用項目),先把原本的DAO勾選取消掉,確定後,再設定引用DAO 3.6
    參照:VB6的問題, OpenDatabase 函數執行時跑出, "找不出可安裝的ISAM"

表單上的控制項閃個不停?

  • 可能是UI與程式碼陷入死結,試著在可疑的程式碼前後,用DoEvents去等待完成
Dim nDoEvents
 
'用下面這個加在可疑程式碼的前後
nDoEvents = DoEvents()