| Statusleiste, CommonDialog, DataChanged, Freefile, Open, Close, LOF |
| |
| |
| Private Dateiname As String | |
| Quelltext Formular "Editor" | |
| Private Sub Form_Load() | |
| cdlDatei.Filter = "Textdatei|*.txt|Alle Dateien|*.*" | Dateien per CommonDialog öffnen. |
| End Sub | |
| |
| Private Sub Form_Resize() | |
| txtTextfeld.Width = Me.ScaleWidth | TextBox hat stets die Breite / Höhe wie das Formular. |
| txtTextfeld.Height = Me.ScaleHeight | |
| End Sub | |
| |
| Private Sub mnuNeu_Click() | Menü: Neue Datei erzeugen. |
| Dim Antwort As Long | |
| If txtTextfeld.DataChanged = True Then | Bei Änderungen in TextBox wird eine Abfrage angezeigt. |
| Antwort = MsgBox(Prompt:="Möchten Sie den Inhalt des Textfensters speichern?", _ |
| Buttons:=vbYesNo + vbQuestion, Title:="Daten wurden geändert") |
| If Antwort = vbYes Then | |
| DateiSpeichern Dateiname | Alten Text speichern. |
| End If | |
| End If | |
| txtTextfeld.Text = "" | TextBox entladen. |
| End Sub | |
| |
| Private Sub mnuÖffnen_Click() | Menü: Datei öffnen. |
| On Error GoTo errÖffnen | |
| Dim DateiNr As Integer | |
| cdlDatei.DialogTitle = "Wählen Sie die zu öffnende Textdatei" |
| cdlDatei.ShowOpen | |
| DateiNr = FreeFile | |
| Dateiname = cdlDatei.FileName | |
| Open Dateiname For Input As DateiNr | TextDatei wird für sequentiellen Lesezugriff geöffnet. |
| txtTextfeld.Text = Input(LOF(DateiNr), DateiNr) | |
| Close | |
| txtTextfeld.DataChanged = False | |
| staStatus.Panels("Dateiname").Text = Dateiname | Ausgabe von Pfad, Dateiname und -größe in Statusleiste. |
| staStatus.Panels("Dateigröße").Text = FileLen(Dateiname) & " Bytes" |
| Exit Sub | |
| errÖffnen: | Errorhandling. |
| MsgBox Prompt:="Fehler beim Öffnen der Datei! (" & Err.Number & ")", _ |
| Buttons:=vbExclamation, Title:=Err.Description | |
| End Sub | |
| |
| Private Sub mnuSpeichern_Click() | Menü: Datei speichern. |
| cdlDatei.DialogTitle = "Wählen Sie den Namen der zu speichernden Textdatei" |
| cdlDatei.ShowOpen | |
| Dateiname = cdlDatei.FileName | |
| DateiSpeichern Dateiname | |
| End Sub | |
| |
| Sub DateiSpeichern(tmpName As String) | |
| On Error GoTo errSpeichern | |
| Dim DateiNr As Integer | |
| DateiNr = FreeFile | |
| Open Dateiname For Output As DateiNr | TextDatei wird für sequentiellen Schreibzugriff geöffnet. |
| Print #DateiNr, txtTextfeld.Text | |
| Close | |
| txtTextfeld.DataChanged = False | |
| Exit Sub | |
| errSpeichern: | Errorhandling. |
| MsgBox Prompt:="Fehler beim Speichern der Datei! (" & Err.Number & ")", _ |
| Buttons:=vbExclamation, Title:=Err.Description | |
| End Sub | |
| |
| Private Sub mnuSuchen_Click() | |
| frmSuchen.Show vbModeless | |
| End Sub |
|
| Quelltext Formular "Suchen" |
| Private Sub cmdAbbrechen_Click() |
| Unload Me |
| End Sub |
|
| Private Sub cmdSuchen_Click() | |
| Dim Startpos As Long | |
| If txtSuchbegriff.Text = "" Then Exit Sub | |
| Startpos = InStr(frmHaupt.txtTextfeld.Text, txtSuchbegriff.Text) |
| If Startpos = 0 Then | |
| txtSuchbegriff.SelStart = 0 | |
| txtSuchbegriff.SelLength = Len(txtSuchbegriff.Text) |
| txtSuchbegriff.SetFocus |
| Exit Sub |
| End If |
| frmHaupt.txtTextfeld.SelStart = Startpos - 1 | |
| frmHaupt.txtTextfeld.SelLength = Len(txtSuchbegriff.Text) | |
| frmHaupt.Show | |
| End Sub | |
| |