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

📄 modgraph.bas

📁 这个代码是基于软盘修复
💻 BAS
📖 第 1 页 / 共 2 页
字号:
'-----------------------------------------DisplayEditOpLight
Public Sub DisplayEditOpLight()
  Dim Y As Long
  Dim i As Long
  Dim Cor As Long
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  For i = 1 To 4
    Cor = 0
    If mLightEdit(i + 5) = True Then Cor = RGB(143, 250, 207)
    Central.ForeColor = Cor
    Central.FillColor = Cor
    Central.Line (239, 20 + Y + i * 15)-(241, 25 + Y + i * 15), , BF
  Next i
End Sub

'----------------------------------------------DisplayScanOp
Public Sub DisplayScanOp()
  Dim i As Byte
  Dim Y As Long
  Dim Cor As Long
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  'Light Copy/Depth/Mark/Jump
  For i = 1 To 4
    Cor = 0
    If mLightScan(i + 6) = True Then Cor = RGB(143, 250, 207)
    Central.ForeColor = Cor
    Central.FillColor = Cor
    Central.Line (239, 20 + Y + i * 15)-(241, 25 + Y + i * 15), , BF
  Next i
  'Repair/Check/User
  Call RadioButtonCheck(mLightScan(1), 143, 44 + Y)
  Call RadioButtonCheck(mLightScan(2), 143, 61 + Y)
  Call RadioButtonCheck(mLightScan(3), 143, 78 + Y)
  'Read/Write/Verify
  Call RadioButtonCheck(mLightScan(4), 178, 51 + Y)
  Call RadioButtonCheck(mLightScan(5), 175, 65 + Y)
  Call RadioButtonCheck(mLightScan(6), 188, 61 + Y)
End Sub

'----------------------------------------------DisplayFormatOp
Public Sub DisplayFormatOp()
  Dim i As Byte
  Dim Y As Long
  Dim Cor As Long
  Dim Bad As Long, Good As Long, Avail As Long, Percent As Long
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  'Light Mark/Jump/Read/Verify
  For i = 1 To 4
    Cor = 0
    If mLightFormat(i + 2) = True Then Cor = RGB(143, 250, 207)
    Central.ForeColor = Cor
    Central.FillColor = Cor
    Central.Line (239, 20 + Y + i * 15)-(241, 25 + Y + i * 15), , BF
  Next i
  'Full/Quick
  Call RadioButtonCheck(mLightFormat(1), 195, 44 + Y)
  Call RadioButtonCheck(mLightFormat(2), 195, 61 + Y)
  'Values
  Call CountSectors(Bad, Good, Avail, Percent)
  Call DigitalINT(Central, 135, 42 + Y, Bad, 2, 4)
  Call DigitalINT(Central, 135, 57 + Y, Good, 2, 4)
  Call DigitalINT(Central, 169, 79 + Y, Avail, 2, 7)
  Call DigitalText(127, 79 + Y, Str03(Percent), 3)
End Sub

'---------------------------------------------DisplayRecoverOp
Public Sub DisplayRecoverOp()
  Dim i As Byte
  Dim Y As Long
  Dim Cor As Long
  Dim sleft As Long
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  'Light Mark/Jump/Depth
  For i = 1 To 3
    Cor = 0
    If mLightRecover(i + 2) = True Then Cor = RGB(143, 250, 207)
    Central.ForeColor = Cor
    Central.FillColor = Cor
    Central.Line (239, 20 + Y + i * 15)-(241, 25 + Y + i * 15), , BF
  Next i
  'Save/Load
  Call RadioButtonCheck(mLightRecover(1), 196, 45 + Y)
  Call RadioButtonCheck(mLightRecover(2), 196, 62 + Y)
  'Next Jump
  Call DigitalINT(Central, 135, 54 + Y, mJumpNext, 2, 4)
  'File
  Call DigitalText(115, 80 + Y, mSaveName, 2)
  'Sectors left
  Call DigitalINT(Central, 135, 41 + Y, CountSecCopy(), 2, 4)
End Sub

'------------------------------------------------DisplayEditOp
Public Sub DisplayEditOp()
  Dim i As Byte
  Dim Y As Long
  Dim Cor As Long
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  'Light Format/Overwrite/Mark/Unmark
  Call DisplayEditOpLight
  'Mark/Copy/Read/Write/Verify
  Call RadioButtonCheck(mLightEdit(1), 115, 40 + Y)
  Call RadioButtonCheck(mLightEdit(2), 115, 50 + Y)
  Call RadioButtonCheck(mLightEdit(3), 115, 60 + Y)
  Call RadioButtonCheck(mLightEdit(4), 115, 70 + Y)
  Call RadioButtonCheck(mLightEdit(5), 115, 80 + Y)
  'Values
  Call DisplayEditValues
End Sub

'------------------------------------------DisplayReadSlider
Public Sub DisplayReadSlider()
  Dim i As Byte
  Dim Y As Long
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  For i = 1 To 4
    If mLightRead <> i Then
      Central.FillColor = 0
      Central.ForeColor = 0
      Central.Line (19 + (4 - i) * 25, 106 + Y)-(32 + (4 - i) * 25, 108 + Y), , BF
    Else
      Central.PaintPicture LoadResPicture(111, vbResBitmap), 19 + (4 - i) * 25, 106 + Y, 14, 3, 0, 0, 14, 3, vbSrcCopy
    End If
  Next i
End Sub

'---------------------------------------------DisplayGeralOp
Public Sub DisplayGeralOp()
  Dim Y As Long
  Dim i As Byte
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Y = Central.PicCentral.Top - 21
  For i = 1 To 4
    If mOperation = i Then
      Central.ForeColor = RGB(143, 250, 207)
      FilledTriangle Central.hDC, RGB(143, 250, 207), 268, Y + 32 + (i - 1) * 18, 276, Y + 32 + (i - 1) * 18, 268, Y + 40 + (i - 1) * 18
      Call DrawBox3D(Central, 1, 264, 28 + Y + (i - 1) * 18, 51, 17)
    Else
      Central.ForeColor = 0
      FilledTriangle Central.hDC, 0, 268, Y + 32 + (i - 1) * 18, 276, Y + 32 + (i - 1) * 18, 268, Y + 40 + (i - 1) * 18
      Call DrawBox3D(Central, 2, 264, 28 + Y + (i - 1) * 18, 51, 17)
    End If
  Next i
End Sub

'-------------------------------------------DisplayCentralOp
Public Sub DisplayCentralOp()
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Select Case mOperation
    Case 1: Central.PaintPicture Central.CentralPics(4).Picture, 105, 27 + Central.PicCentral.Top - 21, 145, 68, 0, 0, 145, 68, vbSrcCopy
    Case 2: Central.PaintPicture Central.CentralPics(5).Picture, 105, 27 + Central.PicCentral.Top - 21, 145, 68, 0, 0, 145, 68, vbSrcCopy
    Case 3: Central.PaintPicture Central.CentralPics(6).Picture, 105, 27 + Central.PicCentral.Top - 21, 145, 68, 0, 0, 145, 68, vbSrcCopy
    Case 4: Central.PaintPicture Central.CentralPics(7).Picture, 105, 27 + Central.PicCentral.Top - 21, 145, 68, 0, 0, 145, 68, vbSrcCopy
  End Select
End Sub

'----------------------------------------------DisplayGoText
Public Sub DisplayGoText()
  Dim Y As Long
  
  If PosGO <> 0 Then Exit Sub
  Y = 32
  If (mModWin = 1) Or (mModWin = 3) Then Y = 284
  If mWork = 0 Then
    Call DigitalText(273, 12 + Y, "       ", 1)
    Select Case mOperation
      Case 1: Call DigitalText(280, 12 + Y, "SCAN", 1)
      Case 2: Call DigitalText(275, 12 + Y, "FORMAT", 1)
      Case 3: Call DigitalText(273, 12 + Y, "RECOVER", 1)
      Case 4: Call DigitalText(280, 12 + Y, "EDIT", 1)
    End Select
  Else
    Call DigitalText(273, 12 + Y, "       ", 1)
    Select Case mOperation
      Case 1, 2, 3, 4: Call DigitalText(280, 12 + Y, "STOP", 4)
    End Select
  End If
End Sub

'---------------------------------------------DisplayTextTip
Public Sub DisplayTextTip(ByVal Texto As String)
  Dim Just As Boolean
  
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Just = False
  Do While Len(Texto) < 40
    If Just = False Then Texto = Texto & " "
    If Just = True Then Texto = " " & Texto
    Just = Not (Just)
  Loop
  Call DigitalText(187, 106 + Central.PicCentral.Top - 21, Texto, 1)
End Sub

'---------------------------------------------DisplayToolTip
Public Sub DisplayToolTip(ByVal mOp As Byte, ByVal sOp As Byte)
  Dim Y As Long
  
  If ToolTips = False Then Exit Sub
  If (mModWin = 1) Or (mModWin = 2) Then Exit Sub
  Select Case mOp
    Case 1:  'Scan
      Select Case sOp
        Case 1: 'Repair
          Call DisplayTextTip("SIMPLE ATTEMPT TO REPAIR FLOPPY DISK")
        Case 2: 'Check
          Call DisplayTextTip("CHECK FOR POSSIBLE BAD SECTORS")
        Case 3: 'User
          Call DisplayTextTip("SCAN DISK WITH USER DEFINED OPTIONS ")
        Case 4: 'Read
          Call DisplayTextTip("PERFORM READ OPERATION")
        Case 5: 'Write
          Call DisplayTextTip("PERFORM WRITE AND READ OPERATION")
        Case 6: 'Verify
          Call DisplayTextTip("PERFORM DISK VERIFY OPERATION")
        Case 7: 'Mark
          Call DisplayTextTip("MARK BAD SECTORS WHEN BAD SECTOR FOUND")
        Case 8: 'Jump
          Call DisplayTextTip("JUMP BAD SECTORS (DO NOT TEST)")
        Case 9: 'Depth
          Call DisplayTextTip("SEARCH BAD SECTOR POSITION")
        Case 10: 'Copy
          Call DisplayTextTip("COPY GOOD SECTOR TO MEMORY FOR LATER USE")
      End Select
    Case 2:  'Format
      Select Case sOp
        Case 1: 'Full
          Call DisplayTextTip("FULL FORMAT - DISK INITIALIZATION")
        Case 2: 'Quick
          Call DisplayTextTip("QUICK FORMAT - ERASE ALL INFORMATION")
        Case 3: 'Mark
          Call DisplayTextTip("MARK BAD TRACK WHEN BAD TRACK FOUND")
        Case 4: 'Jump
          Call DisplayTextTip("JUMP BAD SECTORS (DO NOT FORMAT)")
        Case 5: 'Read
          Call DisplayTextTip("PERFORM READ OPERATION")
        Case 6: 'Verify
          Call DisplayTextTip("PERFORM DISK VERIFY OPERATION")
        Case 7: 'n

⌨️ 快捷键说明

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