home *** CD-ROM | disk | FTP | other *** search
/ Programming Tool Box / SIMS_2.iso / bp_1_94 / vbdos / demo3.frm < prev    next >
Text File  |  1993-11-01  |  4KB  |  190 lines

  1. Version 1.00
  2. BEGIN Form QuerSummenForm
  3.     AutoRedraw   = 0
  4.     BackColor    = QBColor(7)
  5.     BorderStyle  = 1
  6.     Caption      = "Quersumme berechnen"
  7.     ControlBox   = 0
  8.     Enabled      = -1
  9.     ForeColor    = QBColor(0)
  10.     Height       = Char(10)
  11.     Left         = Char(47)
  12.     MaxButton    = 0
  13.     MinButton    = 0
  14.     MousePointer = 0
  15.     Tag          = ""
  16.     Top          = Char(12)
  17.     Visible      = -1
  18.     Width        = Char(28)
  19.     WindowState  = 0
  20.     BEGIN Label Bezeichnung1
  21.         Alignment    = 0
  22.         AutoSize     = 0
  23.         BackColor    = QBColor(7)
  24.         BorderStyle  = 0
  25.         Caption      = "Name der zu prüfenden"
  26.         DragMode     = 0
  27.         Enabled      = -1
  28.         ForeColor    = QBColor(0)
  29.         Height       = Char(1)
  30.         Left         = Char(2)
  31.         MousePointer = 0
  32.         TabIndex     = 0
  33.         Tag          = ""
  34.         Top          = Char(1)
  35.         Visible      = -1
  36.         Width        = Char(24)
  37.     END
  38.     BEGIN Label Bezeichnung2
  39.         Alignment    = 0
  40.         AutoSize     = 0
  41.         BackColor    = QBColor(7)
  42.         BorderStyle  = 0
  43.         Caption      = "Datei:"
  44.         DragMode     = 0
  45.         Enabled      = -1
  46.         ForeColor    = QBColor(0)
  47.         Height       = Char(1)
  48.         Left         = Char(2)
  49.         MousePointer = 0
  50.         TabIndex     = 1
  51.         Tag          = ""
  52.         Top          = Char(2)
  53.         Visible      = -1
  54.         Width        = Char(6)
  55.     END
  56.     BEGIN TextBox DateiName
  57.         BackColor    = QBColor(7)
  58.         BorderStyle  = 1
  59.         DragMode     = 0
  60.         Enabled      = -1
  61.         ForeColor    = QBColor(0)
  62.         Height       = Char(1)
  63.         Left         = Char(10)
  64.         MousePointer = 0
  65.         MultiLine    = 0
  66.         ScrollBars   = 0
  67.         TabIndex     = 2
  68.         TabStop      = -1
  69.         Tag          = ""
  70.         Text         = ""
  71.         Top          = Char(2)
  72.         Visible      = -1
  73.         Width        = Char(14)
  74.     END
  75.     BEGIN CommandButton Abbruch
  76.         BackColor    = QBColor(7)
  77.         Cancel       = 0
  78.         Caption      = "&Abbruch"
  79.         Default      = 0
  80.         DragMode     = 0
  81.         Enabled      = -1
  82.         Height       = Char(3)
  83.         Left         = Char(2)
  84.         MousePointer = 0
  85.         TabIndex     = 3
  86.         TabStop      = -1
  87.         Tag          = ""
  88.         Top          = Char(5)
  89.         Visible      = -1
  90.         Width        = Char(11)
  91.     END
  92.     BEGIN CommandButton OK
  93.         BackColor    = QBColor(7)
  94.         Cancel       = 0
  95.         Caption      = "&Ok"
  96.         Default      = 0
  97.         DragMode     = 0
  98.         Enabled      = -1
  99.         Height       = Char(3)
  100.         Left         = Char(14)
  101.         MousePointer = 0
  102.         TabIndex     = 4
  103.         TabStop      = -1
  104.         Tag          = ""
  105.         Top          = Char(5)
  106.         Visible      = -1
  107.         Width        = Char(10)
  108.     END
  109.     BEGIN Label Warten
  110.         Alignment    = 0
  111.         AutoSize     = 0
  112.         BackColor    = QBColor(7)
  113.         BorderStyle  = 0
  114.         Caption      = ""
  115.         DragMode     = 0
  116.         Enabled      = -1
  117.         ForeColor    = QBColor(0)
  118.         Height       = Char(1)
  119.         Left         = Char(2)
  120.         MousePointer = 0
  121.         TabIndex     = 5
  122.         Tag          = ""
  123.         Top          = Char(3)
  124.         Visible      = -1
  125.         Width        = Char(22)
  126.     END
  127. END
  128. '$FORM MainForm
  129. '$FORM Druckform
  130. REM $INCLUDE: 'CONSTANT.BI'
  131.  
  132. SUB Abbruch_Click ()
  133.  
  134.     SHARED QSLaeuft AS INTEGER
  135.     IF QSLaeuft THEN
  136.         IF MSGBOX("Wollen Sie die Berechnung abbrechen?", 4) = 7 THEN
  137.             ' Benutzer hat auf "Nein" geklickt
  138.             EXIT SUB
  139.         END IF
  140.         Tag = "Abbruch"
  141.     ELSE
  142.         UNLOAD QuerSummenForm
  143.     END IF
  144.  
  145. END SUB
  146.  
  147. SUB Form_Load ()
  148.  
  149.     MainForm.QuerSumme.Enabled = False
  150.  
  151. END SUB
  152.  
  153. SUB Form_Unload (Cancel AS INTEGER)
  154.  
  155.     MainForm.QuerSumme.Enabled = True
  156.  
  157. END SUB
  158.  
  159. SUB OK_Click ()
  160.  
  161.     SHARED QSLaeuft AS INTEGER, File AS INTEGER
  162.     ' (Variablen werden in Abbruch_Click gebraucht)
  163.     DIM Dummy AS INTEGER, Char AS STRING * 1
  164.     DIM QS AS INTEGER, FileName AS STRING
  165.  
  166.     IF NOT QSLaeuft THEN
  167.         QSLaeuft = True
  168.         File = FREEFILE
  169.         FileName = DateiName.Text
  170.         OPEN FileName FOR BINARY ACCESS READ AS #File
  171.         DO UNTIL EOF(File)
  172.             ' Zeichenweises Lesen dauert sehr lange, in
  173.             ' ernsthaftem Programm würde man Blöcke à
  174.             ' 32 KB einlesen o.ä.!
  175.             GET #File, , Char
  176.             QS = QS XOR ASC(Char)
  177.             Warten.Caption = FORMAT$(100 * SEEK(File) \ LOF(File)) + "% fertig..."
  178.             Dummy = DOEVENTS()
  179.             IF Tag = "Abbruch" THEN EXIT DO
  180.         LOOP
  181.         CLOSE File
  182.         IF Tag <> "Abbruch" THEN
  183.             MSGBOX "XOR-Quersumme von " + FileName + " ist" + STR$(QS) + ".", 0, "Fertig!"
  184.         END IF
  185.         UNLOAD QuerSummenForm
  186.     END IF
  187.  
  188. END SUB
  189.  
  190.