Éditeur de texte de base dans VB.NET


Éditeur de texte de base dans VB.NET

Ce tutoriel vous guidera vers un tutoriel étape par étape sur la création d’un éditeur de texte de base dans VB.Net

Problème

Créez un programme d’application Windows Form dans Visual Basic.Net qui permettra aux utilisateurs de créer un éditeur de texte de base.

La description

Ce didacticiel permettra à l’utilisateur d’utiliser différents contrôles tels que RichTextBox, ToolStrip, MenuStrip, StatusStrip, Timer, SaveFileDialog, OpenFileDialog pour créer un éditeur de texte de base dans VB.NET.

Avant le didacticiel, les éléments suivants sont nécessaires pour démarrer:

  • Microsoft Visual Studio 2012 – Ci-dessus

Le tutoriel commence ici:

  1. Ouvrez Microsoft Visual Studio 2012
  2. Sélectionnez un nouveau projet dans le menu Fichier.
  3. Sélectionnez Visual Basic, Application Windows Form, puis cliquez sur OK.
  4. Nous avons besoin de ces contrôles suivants sur notre formulaire.
  • RichTextBox
  • ToolStrip
  • MenuStrip
  • StatusStrip
  • Minuteur
  • SaveFileDialog
  • OpenFileDialog
  • Bande du menu contextuel
  1. Ajoutez d’abord les éléments de la barre de menus, de la barre d’outils et de la bande de menus contextuels, puis nous nommerons nos contrôles de formulaire de cette manière:
  • Document est le nom de la zone de texte enrichi.
  • Timer est le nom de la minuterie.
  • lblZoom est le nom d’une étiquette de bande d’état pour le zoom.
  • lblCharCount est le nom d’une autre bande d’état pour le nombre de caractères.
  • tbNew est le nom de l’élément de la barre d’outils pour Nouveau document.
  • tbopen est le nom de l’élément de la barre d’outils pour Ouvrir le document.
  • tbsave est le nom de l’élément de la barre d’outils pour Enregistrer le document.
  • tbcut est le nom de l’élément de la barre d’outils pour Couper le texte.
  • tbcopy est le nom de l’élément de la barre d’outils pour Copier le texte.
  • tbpaste est le nom de l’élément de la barre d’outils pour Coller du texte.
  • tbbold est le nom de l’élément de la barre d’outils pour le texte en gras.
  • tbitalic est le nom de l’élément de la barre d’outils pour le texte italique.
  • tbunderline est le nom de l’élément de la barre d’outils pour le texte souligné.
  • tbstrike est le nom de l’élément de la barre d’outils pour le texte Strike.
  • tbalignleft est le nom de l’élément de la barre d’outils pour le texte Aligner à gauche.
  • tbaligncentre est le nom de l’élément de la barre d’outils pour le texte Aligner au centre.
  • tbalignright est le nom de l’élément de la barre d’outils pour le texte Aligner à droite.
  • tbupper est le nom de l’élément de la barre d’outils pour le texte en majuscules.
  • tblower est le nom de l’élément de la barre d’outils pour le texte en minuscules.
  • tbzoom est le nom de l’élément de la barre d’outils pour le texte Zoom avant.
  • tbzoomout est le nom de l’élément de la barre d’outils pour Zoom arrière sur le texte.
  • tbselectfont est le nom de l’élément de la barre d’outils pour la police de texte.
  • tbselectsize est le nom de l’élément de la barre d’outils pour la taille du texte.
  • mMNew est le nom de l’élément du menu principal pour Nouveau document.
  • mMOpen est le nom de l’élément du menu principal pour Ouvrir le document.
  • mMSave est le nom de l’élément du menu principal pour Enregistrer le document.
  • mMExit est le nom de l’élément du menu principal pour quitter le document.
  • mMUndo est le nom de l’élément du menu principal pour Annuler le texte.
  • mMRedo est le nom de l’élément du menu principal pour Redo Text.
  • mMCut est le nom de l’élément du menu principal pour Couper le texte.
  • mMCopy est le nom de l’élément du menu principal pour copier du texte.
  • mMPaste est le nom de l’élément du menu principal pour Coller du texte.
  • mMSelectAll est le nom de l’élément du menu principal pour Sélectionner tout le texte.
  • mMCustomize est le nom de l’élément du menu principal pour personnaliser le texte.
  • UndoToolStripMenuItem est le nom de l’élément de menu contextuel pour Annuler le texte.
  • RedoToolStripMenuItem est le nom de l’élément de menu contextuel pour Redo Text.
  • CutToolStripMenuItem est le nom de l’élément de menu contextuel pour Couper le texte.
  • CopyToolStripMenuItem est le nom de l’élément de menu contextuel pour Copier le texte.
  • PasteToolStripMenuItem est le nom de l’élément de menu contextuel pour Coller du texte.
  1. C’est ainsi que nous concevons le formulaire. (N’hésitez pas à mettre en page le vôtre)
lire plus  Diagramme ER du système d'enregistrement du temps quotidien
Conception de formulaire de l'éditeur de texte de base dans VB.Net
Conception de formulaire de l’éditeur de texte de base dans VB.Net

Figure 1. Conception du formulaire

  1. Collez le code suivant en haut de l’éditeur de texte pour importer un service

Codez ici

Imports System.Drawing.Text

Code de fin

Explication du code:

Cela permettra à l’éditeur d’avoir accès à différentes touches de raccourci liées au texte et aux différentes fonctions et polices installées dans l’appareil.

  1. Double-cliquez sur le formulaire de la fenêtre et collez le code suivant:

Codez ici

For fntSize = 10 To 75
    tbSelectSize.Items.Add(fntSize)
        Next
        Dim fonts As New InstalledFontCollection()
        For fntFamily As Integer = 0 To fonts.Families.Length - 1
            tbSelectFont.Items.Add(fonts.Families(fntFamily).Name)
Next

Code de fin

Explication du code:

Ce code chargera la taille de la police et toutes les polices installées et leurs familles de polices dans l’éditeur de texte. Cela chargera également les polices dans le Tbselectfont dans la barre d’outils

  1. Double-cliquez sur le minuteur et collez le code suivant:

Codez ici

lblCharCount.Text = "Characters in the current document: " & Document.TextLength.ToString()
lblZoom.Text = Document.ZoomFactor.ToString()

Code de fin

Explication du code:

Ce code comptera le nombre de caractères et le niveau de zoom dans l’éditeur de texte puis l’affichera dans les libellés lblCharCount et lblZoom.

  1. Double-cliquez sur la zone Texte enrichi et collez le code suivant:

Codez ici

System.Diagnostics.Process.Start(e.LinkText)

Code de fin

Explication du code:

Ce code démarre un processus de diagnostic.

  1. Pour le code des éléments de la barre du menu principal, collez ce qui suit:

Codez ici

Private Sub mMNew_Click(sender As System.Object, e As System.EventArgs) Handles mMNew.Click
        NewDocument()
End Sub

Private Sub mMOpen_Click(sender As System.Object, e As System.EventArgs) Handles mMOpen.Click
        Open()
End Sub

Private Sub mMSave_Click(sender As System.Object, e As System.EventArgs) Handles mMSave.Click
        Save()
End Sub

Private Sub mMExit_Click(sender As System.Object, e As System.EventArgs) Handles mMExit.Click
        ExitApplication()
End Sub
    '----------------------------
Private Sub mMUndo_Click(sender As System.Object, e As System.EventArgs) Handles mMUndo.Click
        Undo()
End Sub

Private Sub mMRedo_Click(sender As System.Object, e As System.EventArgs) Handles mMRedo.Click
        Redo()
End Sub

Private Sub mMCut_Click(sender As System.Object, e As System.EventArgs) Handles mMCut.Click
        Cut()
End Sub

Private Sub mMCopy_Click(sender As System.Object, e As System.EventArgs) Handles mMCopy.Click
        Copy()
End Sub

Private Sub mMPaste_Click(sender As System.Object, e As System.EventArgs) Handles mMPaste.Click
        Paste()
End Sub

Private Sub mMSelectAll_Click(sender As System.Object, e As System.EventArgs) Handles mMSelectAll.Click
        SelectAll()
End Sub
 '-----------------------
Private Sub mMCustomize_Click(sender As System.Object, e As System.EventArgs) Handles mMCustomize.Click
        Customize()
End Sub

Code de fin

lire plus  Comment désactiver et désactiver les badges de notification à partir de la barre des tâches de Windows 11

Explication du code:

Ces codes donneront une fonction pour chaque élément de la barre / bande de menu.

  1. Pour les éléments de la barre d’outils, collez le code suivant:

Codez ici

Private Sub tbNew_Click(sender As System.Object, e As System.EventArgs) Handles tbNew.Click
        NewDocument()
End Sub

Private Sub tbOpen_Click(sender As System.Object, e As System.EventArgs) Handles tbOpen.Click
        Open()
End Sub

Private Sub tbSave_Click(sender As System.Object, e As System.EventArgs) Handles tbSave.Click
        Save()
End Sub

Private Sub tbCut_Click(sender As System.Object, e As System.EventArgs) Handles tbCut.Click
        Cut()
End Sub

Private Sub tbCopy_Click(sender As System.Object, e As System.EventArgs) Handles tbCopy.Click
        Copy()
End Sub

Private Sub tbPaste_Click(sender As System.Object, e As System.EventArgs) Handles tbPaste.Click
        Paste()
End Sub
'---------------------------------
Private Sub tbBold_Click(sender As System.Object, e As System.EventArgs) Handles tbBold.Click
        Dim bfont As New Font(Document.Font, FontStyle.Bold)
        Dim rfont As New Font(Document.Font, FontStyle.Regular)
        If Document.SelectedText.Length = 0 Then Exit Sub
        If Document.SelectionFont.Bold Then
            Document.SelectionFont = rfont
        Else
            Document.SelectionFont = bfont
        End If
End Sub

Private Sub tbItalic_Click(sender As System.Object, e As System.EventArgs) Handles tbItalic.Click
        Dim Ifont As New Font(Document.Font, FontStyle.Italic)
        Dim rfont As New Font(Document.Font, FontStyle.Regular)
        If Document.SelectedText.Length = 0 Then Exit Sub
        If Document.SelectionFont.Italic Then
            Document.SelectionFont = rfont
        Else
            Document.SelectionFont = Ifont
        End If
End Sub

Private Sub tbUnderline_Click(sender As System.Object, e As System.EventArgs) Handles tbUnderline.Click
        Dim Ufont As New Font(Document.Font, FontStyle.Underline)
        Dim rfont As New Font(Document.Font, FontStyle.Regular)
        If Document.SelectedText.Length = 0 Then Exit Sub
        If Document.SelectionFont.Underline Then
            Document.SelectionFont = rfont
        Else
            Document.SelectionFont = Ufont
        End If
End Sub

Private Sub tbStrike_Click(sender As System.Object, e As System.EventArgs) Handles tbStrike.Click
        Dim Sfont As New Font(Document.Font, FontStyle.Strikeout)
        Dim rfont As New Font(Document.Font, FontStyle.Regular)
        If Document.SelectedText.Length = 0 Then Exit Sub
        If Document.SelectionFont.Strikeout Then
            Document.SelectionFont = rfont
        Else
            Document.SelectionFont = Sfont
        End If
End Sub
' -------------------------------
Private Sub tbAlignLeft_Click(sender As System.Object, e As System.EventArgs) Handles tbAlignLeft.Click
        Document.SelectionAlignment = HorizontalAlignment.Left
End Sub

Private Sub tbAlignCentre_Click(sender As System.Object, e As System.EventArgs) Handles tbAlignCentre.Click
        Document.SelectionAlignment = HorizontalAlignment.Center
End Sub

Private Sub tbAlignRight_Click(sender As System.Object, e As System.EventArgs) Handles tbAlignRight.Click
        Document.SelectionAlignment = HorizontalAlignment.Right
End Sub
'----------------------------------------------
Private Sub tbUpper_Click(sender As System.Object, e As System.EventArgs) Handles tbUpper.Click
        Document.SelectedText = Document.SelectedText.ToUpper()
End Sub

Private Sub tbLower_Click(sender As System.Object, e As System.EventArgs) Handles tbLower.Click
        Document.SelectedText = Document.SelectedText.ToLower()
End Sub
 '---------------------------------------
Private Sub tbZoom_Click(sender As System.Object, e As System.EventArgs) Handles tbZoom.Click
        If Document.ZoomFactor = 63 Then
            Exit Sub
        Else
            Document.ZoomFactor = Document.ZoomFactor + 1
        End If
End Sub

Private Sub tbZoomOut_Click(sender As System.Object, e As System.EventArgs) Handles tbZoomOut.Click
        If Document.ZoomFactor = 1 Then
            Exit Sub
        Else
            Document.ZoomFactor = Document.ZoomFactor - 1
        End If
End Sub
'------------------------------------------
Private Sub tbSelectFont_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles tbSelectFont.SelectedIndexChanged
        Dim ComboFonts As System.Drawing.Font
        Try
            ComboFonts = Document.SelectionFont
            Document.SelectionFont = New System.Drawing.Font(tbSelectFont.Text, Document.SelectionFont.Size, Document.SelectionFont.Style)
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
End Sub

Private Sub tbSelectSize_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles tbSelectSize.SelectedIndexChanged
       Document.SelectionFont = New Font(tbSelectSize.SelectedItem.ToString, CInt(tbSelectSize.SelectedItem.ToString), Document.SelectionFont.Style)
    End Sub

Encoder

lire plus  Apprenez les bases de PHP pour obtenir un emploi ou réussir vos examens - Cours Udemy gratuits

Explication du code:

Ce code donnera une fonction pour chaque outil / élément de la barre d’outils en fonction de ce que chaque outil doit faire.

  1. Pour les fonctions de l’éditeur de texte, collez ce qui suit

Codez ici

'CLEAR THE RICHTEXTBOX - MAKES NEW DOCUMENT
Private Sub NewDocument()
   Document.Clear()
End Sub

'OPEN WORK AS PLAIN TEXT FILE
Private Sub Open()
 If openWork.ShowDialog = Windows.Forms.DialogResult.OK Then
   Document.LoadFile(openWork.FileName, _
   RichTextBoxStreamType.PlainText)
End If
End Sub

'SAVE WORK AS PLAIN TEXT FILE
Private Sub Save()
If saveWork.ShowDialog = Windows.Forms.DialogResult.OK Then
 Try
   Document.SaveFile(saveWork.FileName, _
   RichTextBoxStreamType.PlainText)
 Catch ex As Exception
MessageBox.Show(ex.Message)
 End Try
End If
End Sub

'EXIT THE PROGRAM
Private Sub ExitApplication()
   Me.Close()
End Sub

Code de fin

Explication du code:

Ces codes sont destinés à raccourcir le code de chaque fonction utilisée pour l’éditeur de texte de base, comme l’ouverture et l’enregistrement du fichier texte, l’effacement et la sortie du programme.

  1. Pour la fonction de certains outils de l’éditeur de texte, collez ce qui suit:

Codez ici

Private Sub Undo()
   Document.Undo()
End Sub

Private Sub Redo()
   Document.Redo()
End Sub

Private Sub Cut()
   Document.Cut()
End Sub

Private Sub Copy()
   Document.Copy()
End Sub

Private Sub Paste()
   Document.Paste()
End Sub

Private Sub SelectAll()
   Document.SelectAll()
End Sub

Private Sub Customize()
Dim ColorPicker As New ColorDialog()
ColorPicker.AllowFullOpen = True
ColorPicker.FullOpen = True
ColorPicker.AnyColor = True
If ColorPicker.ShowDialog = Windows.Forms.DialogResult.OK Then
   mainMenu.BackColor = ColorPicker.Color
   Tools.BackColor = ColorPicker.Color
   Status.BackColor = ColorPicker.Color
End If

Code de fin

Explication du code:

Ces codes sont utilisés pour activer les fonctions de certains outils de la barre d’outils, tels que annuler, copier, coller, couper, tout sélectionner, refaire et personnaliser.

  1. Pour l’outil dans la bande d’outils, collez les codes suivants:

Codez ici

Private Sub UndoToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles UndoToolStripMenuItem.Click
   Undo()
End Sub

Private Sub RedoToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles RedoToolStripMenuItem.Click
   Redo()
End Sub

Private Sub CutToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles CutToolStripMenuItem.Click
   Cut()
End Sub

Private Sub CopyToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles CopyToolStripMenuItem.Click
   Copy()
End Sub

Private Sub PasteToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles PasteToolStripMenuItem.Click
   Paste()
End Sub

Code de fin

Explication du code:

Cela attribuera une fonction à chaque outil dans la bande de menu contextuel lors d’un clic droit.

Conception de formulaire de l'éditeur de texte de base dans la sortie finale de VB.Net
Conception de formulaire de l’éditeur de texte de base dans la sortie finale de VB.Net

Conclusion:

Avec l’utilisation de l’éditeur de texte, vous pouvez désormais formater votre texte et votre contenu. Le projet et le code source sont disponibles pour téléchargement et vous pouvez le modifier en fonction de vos préférences et exigences.

Auteur:

Nom: Charlie Devera
Adresse électronique: [email protected]

Téléchargement gratuit du code source (éditeur de texte de base dans VB.Net)

Vous pouvez visiter notre Facebook page pour plus d’informations, demandes de renseignements et commentaires.

Louer notre équipe pour faire le projet.

commentaires

commentaires





Telecharger ici

Laisser un commentaire

Aller au contenu principal