Hallo und willkommen zu meinem Tutorial:
So erstellt man einen einfachen Texteditor
1. Einleitung
In diesem Tutorial wollen wir uns damit befassen, einen einfachen Texteditor zu erstellen.
Unsere Überlegungen:
- Man soll selbstverständlich die Texte speichern und auch wieder öffnen, ein neues Dokument erstellen und das Dokument unter einen neuen Namen
abspeichern können
- Standard Funktionen wie Rückgängig, Wiederholen, Ausschneiden, Kopieren, Einfügen und Alles Makrieren gehören natürlich dazu
- Man soll die Schriftfarbe, Schriftart, Schriftschnitt und auch die Schriftgröße wenn möglichst über einen Dialog rerändern können
- Der Benutzer soll möglichst eine benutzerfreundliche Oberfläche bekommen (GUI, Graphical User Interface)
- Es soll eine Extrafunktion wie "Aktuelle Uhrzeit und Datum einfügen" dabei sein.
2. "Zutaten"
- 1 x RichTextBox (das wohl am wichtigsten Objekt)
- 1 x MenuStrip (mit Datei, Bearbeiten, Extras und Hilfe)
- 1 x StatusStrip (dort soll das Datum angezeigt werden)
- 1 x OpenFileDialog
- 1 x SaveFileDialog
- 1 x FontDialog (Eigenschaft "ShowColor = True")
- Die Form nennen wir "Textverarbeitung"
3. Die Anordnung
- Die RichTextBox möglichst in die Mitte ziehen
- Den Rest wie MenuStrip und Statusstrip wird ja automatisch angeordnet)
4. Funktionalität
Beginnen wir mit dem MenuStrip "Datei".
Fügen Sie dazu 5 neue Einträge hinzu und 2 Separator
Der erste Eintrag bekommt den Text "Neu", der zweite "Öffnen", dann kommt ein Separator, dann einmal " Speichern" und "Speichern unter".
Zu guterletzt kommt wieder ein Separator und darunter der Eintrag "Beenden".
Aus allererstes System.IO importieren (Imports System.IO, soll komplett gleich am anfang stehen)
Was passiert, wenn man auf "Neu" klickt?
Folgendes soll passieren: Als erster soll ein SaveFileDialog mit den Titel "Speicherort des neuen Dokumentes festlegen" erscheinen.
Dazu folgender Code:
Folgendes Problem habe ich noch: Die festgelegte Schriftart, Schriftfarbe und Schriftschnitt und Schriftgröße wird nicht gespeichert, doch darum kümmern
wir uns im 2. Teil.
Was passiert, wenn man auf "Öffnen" klickt?
Folgende Sachen sollen sich dann abspielen: Die RichtTextBox soll geleert werden und dann aber auch wieder mit geöffneten Text befüllt werden.
Das machen wir am besten so:
Wie oben schon gesagt: Die festgelegte Schriftart, Schriftfarbe und Schriftschnitt und Schriftgröße werden nicht geöffnet, darum kümmeren wir uns
im 2. Teil
Was passiert, wenn man auf "Speichern" klickt?
Folgendes soll sich abspielen: Der aktuelle Inhalt soll gespeichert werden
Das machen wir so:
Am besten legt ihr am Anfang schon einen Pfad fest, indem der Text gespeichert werden soll, sonst gibt's Probleme...
Was passiert, wenn man auf "Speichern unter" klickt?
Folgendes soll sich abspielen: Der Text soll unter einem anderen Namen gespeichert werden
Folgendes Problem habe ich noch: Die festgelegte Schriftart, Schriftfarbe und Schriftschnitt und Schriftgröße wird nicht gespeichert, doch darum kümmern
wir uns im 2. Teil.
Was passiert, wenn man auf "Beenden" klickt?
Ganz einfach: Das Programm soll beendet werden:
Nun sind wir im Menü "Bearbeiten"
1. Menü: Rückgängig
2. Menü: Wiederholen
Seperator
3. Menü: Kopieren
4. Menü: Einfügen
Seperator
5. Menü Ausschneiden
Seperator
6. Menü: Alle Markieren
Was passiert, wenn man auf "Rückgängig" klickt?
Die Aktion in der RichTextBox soll "Rückgängig" gemacht werden. Dazu einen ganz einfachen Code:
Was passiert, wenn man auf "Wiederholen" klickt?
Die Aktion in der RichTextBox soll "Wiederholt" werden. Dazu einen ganz einfachen Code:
Was passiert, wenn man auf "Kopieren" klickt?
Der selektierte Text in der RichTextBOx soll ind die Zwischenablage verschoben werden.
Was passiert, wenn man auf "Einfügen" klickt?
Der aktuelle Text in der Zwischenablage soll eingefügt werden, Bilder werden im TextEditor nicht unterstüzt. (Wie bei Editor)
Was passiert, wenn man auf "Ausschneiden" klickt?
Erst soll der markierte Text in die Zwischenablage verschoben werden und dann gelöscht werden. Dazu folgender Code:
Was passiert, wenn man auf "Alles Markieren" klickt?
Der ganze Text in der RichTextBox soll selektiert werden.
Der Code ist "easy":
Nun zu "Extras":
1. Menü: "Aktuelles Datum und Uhrzeit einfügen"
2. Menü: "Schriftmenü"
Was passiert, wenn man auf "Aktuelles Datum und Uhrzeit einfügen" klickt?
Das aktuelle Datum und die Uhrzeit soll eingefügt werden.
Was passiert, wenn man auf Schriftmenü" klickt?
Das Schriftmenü (ShowColor = True) wird angezeigt und man kann bei den selektierten Text viel ändern)
' Die gewünschte Schriftfarbe wird gesetzt
5. Ein kleines Extra...
Im Statusstrip soll nun auch das Datum und die Uhrzeit eingefügt werden.
Geht ganz einfach:
6. Zum Schluss
Das Programm hat noch ein paar Bugs, die im 2. Teil behoben werden.
Ich hoffe, das Tutorial hat euch gefallen und Sie erweitern ihren TextEditor um ein paar tolle Funktionen!
Gruß
Tobi
So erstellt man einen einfachen Texteditor
1. Einleitung
In diesem Tutorial wollen wir uns damit befassen, einen einfachen Texteditor zu erstellen.
Unsere Überlegungen:
- Man soll selbstverständlich die Texte speichern und auch wieder öffnen, ein neues Dokument erstellen und das Dokument unter einen neuen Namen
abspeichern können
- Standard Funktionen wie Rückgängig, Wiederholen, Ausschneiden, Kopieren, Einfügen und Alles Makrieren gehören natürlich dazu
- Man soll die Schriftfarbe, Schriftart, Schriftschnitt und auch die Schriftgröße wenn möglichst über einen Dialog rerändern können
- Der Benutzer soll möglichst eine benutzerfreundliche Oberfläche bekommen (GUI, Graphical User Interface)
- Es soll eine Extrafunktion wie "Aktuelle Uhrzeit und Datum einfügen" dabei sein.
2. "Zutaten"
- 1 x RichTextBox (das wohl am wichtigsten Objekt)
- 1 x MenuStrip (mit Datei, Bearbeiten, Extras und Hilfe)
- 1 x StatusStrip (dort soll das Datum angezeigt werden)
- 1 x OpenFileDialog
- 1 x SaveFileDialog
- 1 x FontDialog (Eigenschaft "ShowColor = True")
- Die Form nennen wir "Textverarbeitung"
3. Die Anordnung
- Die RichTextBox möglichst in die Mitte ziehen
- Den Rest wie MenuStrip und Statusstrip wird ja automatisch angeordnet)
4. Funktionalität
Beginnen wir mit dem MenuStrip "Datei".
Fügen Sie dazu 5 neue Einträge hinzu und 2 Separator
Der erste Eintrag bekommt den Text "Neu", der zweite "Öffnen", dann kommt ein Separator, dann einmal " Speichern" und "Speichern unter".
Zu guterletzt kommt wieder ein Separator und darunter der Eintrag "Beenden".
Aus allererstes System.IO importieren (Imports System.IO, soll komplett gleich am anfang stehen)
Was passiert, wenn man auf "Neu" klickt?
Folgendes soll passieren: Als erster soll ein SaveFileDialog mit den Titel "Speicherort des neuen Dokumentes festlegen" erscheinen.
Dazu folgender Code:
Quellcode
- RichTextBox1.Clear() ' Die Textbox wird geleert
- SaveDialog1.Title = "Speicherort des neuen Dokumentes festlegen" ' Der Titel des SaveFileDialogs wird geändert
- SaveDialog1.ShowDialog() ' Der SaveDialog erscheint
- Dim writer As New StreamWriter(savedialog.FileName) ' Jetzt geht's los mit dem Speichern!
- If Not (writer Is Nothing) Then ' Wenn der Streamwriter nicht "nichts ist" dann soll ausgeführt werden
- writer.Write(RichTextBox1.Text) ' Text aus der RichTextBox wird gespeichert
- writer.Close() ' Der STreamWriter wird beendent
- End If
- Me.Text = "Textverarbeitung (" & savedialog.FileName & ")" ' Der Name der Form wird verändert
Folgendes Problem habe ich noch: Die festgelegte Schriftart, Schriftfarbe und Schriftschnitt und Schriftgröße wird nicht gespeichert, doch darum kümmern
wir uns im 2. Teil.
Was passiert, wenn man auf "Öffnen" klickt?
Folgende Sachen sollen sich dann abspielen: Die RichtTextBox soll geleert werden und dann aber auch wieder mit geöffneten Text befüllt werden.
Das machen wir am besten so:
Quellcode
- If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then 'Wenn auf OK geklickt wird, dann aoll ausgeführt werden
- Dim reader As New StreamReader(OpenFileDialog1.FileName) ' Neuer Streamreader
- Dim dateiinhalt As String = reader.ReadToEnd
- reader.Close()
- Me.Text = "Textverarbeitung (" & OpenFileDialog1.FileName & ")" ' Text wird verändert
- RichTextBox1.Clear() ' Die RichTextBox1 soll geleert werden
- RichTextBox1.Text = dateiinhalt ' RichtextBox1.Text = Der geöffnete Text
- End If
Wie oben schon gesagt: Die festgelegte Schriftart, Schriftfarbe und Schriftschnitt und Schriftgröße werden nicht geöffnet, darum kümmeren wir uns
im 2. Teil
Was passiert, wenn man auf "Speichern" klickt?
Folgendes soll sich abspielen: Der aktuelle Inhalt soll gespeichert werden
Das machen wir so:
Am besten legt ihr am Anfang schon einen Pfad fest, indem der Text gespeichert werden soll, sonst gibt's Probleme...
Was passiert, wenn man auf "Speichern unter" klickt?
Folgendes soll sich abspielen: Der Text soll unter einem anderen Namen gespeichert werden
Quellcode
- If savedialog.ShowDialog = Windows.Forms.DialogResult.OK Then
- SaveFileDialog1.Title = "Speichern unter..."
- Dim writer As New StreamWriter(savedialog.FileName)
- If Not (writer Is Nothing) Then
- writer.Write(RichTextBox1.Text)
- writer.Close()
- End If
- Me.Text = "Textverarbeitung (" & savedialog.FileName & ")"
- End If
Folgendes Problem habe ich noch: Die festgelegte Schriftart, Schriftfarbe und Schriftschnitt und Schriftgröße wird nicht gespeichert, doch darum kümmern
wir uns im 2. Teil.
Was passiert, wenn man auf "Beenden" klickt?
Ganz einfach: Das Programm soll beendet werden:
Nun sind wir im Menü "Bearbeiten"
1. Menü: Rückgängig
2. Menü: Wiederholen
Seperator
3. Menü: Kopieren
4. Menü: Einfügen
Seperator
5. Menü Ausschneiden
Seperator
6. Menü: Alle Markieren
Was passiert, wenn man auf "Rückgängig" klickt?
Die Aktion in der RichTextBox soll "Rückgängig" gemacht werden. Dazu einen ganz einfachen Code:
Was passiert, wenn man auf "Wiederholen" klickt?
Die Aktion in der RichTextBox soll "Wiederholt" werden. Dazu einen ganz einfachen Code:
Was passiert, wenn man auf "Kopieren" klickt?
Der selektierte Text in der RichTextBOx soll ind die Zwischenablage verschoben werden.
Was passiert, wenn man auf "Einfügen" klickt?
Der aktuelle Text in der Zwischenablage soll eingefügt werden, Bilder werden im TextEditor nicht unterstüzt. (Wie bei Editor)
Was passiert, wenn man auf "Ausschneiden" klickt?
Erst soll der markierte Text in die Zwischenablage verschoben werden und dann gelöscht werden. Dazu folgender Code:
Was passiert, wenn man auf "Alles Markieren" klickt?
Der ganze Text in der RichTextBox soll selektiert werden.
Der Code ist "easy":
Nun zu "Extras":
1. Menü: "Aktuelles Datum und Uhrzeit einfügen"
2. Menü: "Schriftmenü"
Was passiert, wenn man auf "Aktuelles Datum und Uhrzeit einfügen" klickt?
Das aktuelle Datum und die Uhrzeit soll eingefügt werden.
Was passiert, wenn man auf Schriftmenü" klickt?
Das Schriftmenü (ShowColor = True) wird angezeigt und man kann bei den selektierten Text viel ändern)
5. Ein kleines Extra...
Im Statusstrip soll nun auch das Datum und die Uhrzeit eingefügt werden.
Geht ganz einfach:
6. Zum Schluss
Das Programm hat noch ein paar Bugs, die im 2. Teil behoben werden.
Ich hoffe, das Tutorial hat euch gefallen und Sie erweitern ihren TextEditor um ein paar tolle Funktionen!
Gruß
Tobi
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Tobiiii“ ()