⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 7-2f.bas

📁 vb6.0编程实例详解,很详细的介绍,对学习VB有帮助
💻 BAS
字号:
Attribute VB_Name = "Module2"
'*** 标准模块,其中包含处理文件的过程。     ***
'*** MDI 记事本应用程序示例的一部分         ***
'**********************************************
Option Explicit

Sub FileOpenProc()
    Dim intRetVal
    On Error Resume Next
    Dim strOpenFileName As String
    frmMDI.CMDialog1.Filename = ""
    frmMDI.CMDialog1.ShowOpen
    If Err <> 32755 Then    ' 用户选择“取消”。
        strOpenFileName = frmMDI.CMDialog1.Filename
        ' 如果文件大于 65K,则不能打开文件,取消操作。
        If FileLen(strOpenFileName) > 65000 Then
            MsgBox "文件太大,无法打开。"
            Exit Sub
        End If
        
        OpenFile (strOpenFileName)
        UpdateFileMenu (strOpenFileName)
        ' 如果工具栏仍不可见,就显示工具栏。
        If gToolsHidden Then
            frmMDI.imgCutButton.Visible = True
            frmMDI.imgCopyButton.Visible = True
            frmMDI.imgPasteButton.Visible = True
            gToolsHidden = False
        End If
    End If
End Sub

Function GetFileName(Filename As Variant)
    ' 显示“另存为”对话框并返回文件名
    ' 如果选择“取消”,则返回空字符串。
    On Error Resume Next
    frmMDI.CMDialog1.Filename = Filename
    frmMDI.CMDialog1.ShowSave
    If Err <> 32755 Then    ' 用户选择“取消”。
        GetFileName = frmMDI.CMDialog1.Filename
    Else
        GetFileName = ""
    End If
End Function

Function OnRecentFilesList(Filename) As Integer
  Dim i         ' 计数器变量。

  For i = 1 To 4
    If frmMDI.mnuRecentFile(i).Caption = Filename Then
      OnRecentFilesList = True
      Exit Function
    End If
  Next i
    OnRecentFilesList = False
End Function

Sub OpenFile(Filename)
    Dim fIndex As Integer
    
    On Error Resume Next
    ' 打开选定文件。
    Open Filename For Input As #1
    If Err Then
        MsgBox "不能打开文件:  " + Filename
        Exit Sub
    End If
    ' 改变鼠标指针显示类型为沙漏。
    Screen.MousePointer = 11
    
    ' 改变窗体标题并显示新文本。
    fIndex = FindFreeIndex()
    Document(fIndex).Tag = fIndex
    Document(fIndex).Caption = UCase(Filename)
    Document(fIndex).Text1.Text = StrConv(InputB(LOF(1), 1), vbUnicode)
    FState(fIndex).Dirty = False
    Document(fIndex).Show
    Close #1
    ' 重新设置鼠标指针。
    Screen.MousePointer = 0
    
End Sub

Sub SaveFileAs(Filename)
    On Error Resume Next
    Dim strContents As String

    ' 打开文件。
    Open Filename For Output As #1
    ' 将记事本中的内容赋值给一变量。
    strContents = frmMDI.ActiveForm.Text1.Text
    ' 显示沙漏鼠标指针。
    Screen.MousePointer = 11
    ' 将变量内容写到一个保存的文件中。
    Print #1, strContents
    Close #1
    ' 重新设置鼠标指针。
    Screen.MousePointer = 0
    ' 设置窗体标题。
    If Err Then
        MsgBox Error, 48, App.Title
    Else
        frmMDI.ActiveForm.Caption = UCase(Filename)
        ' 重新设置 dirty 标志。
        FState(frmMDI.ActiveForm.Tag).Dirty = False
    End If
End Sub

Sub UpdateFileMenu(Filename)
        Dim intRetVal As Integer
        ' 判断打开的文件名是否已经在“文件”菜单控件数组中。
        intRetVal = OnRecentFilesList(Filename)
        If Not intRetVal Then
            ' 将打开的文件写到注册表。
            WriteRecentFiles (Filename)
        End If
        ' 更新“文件”菜单控件数组中最近打开的文件列表。
        GetRecentFiles
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -