📄 frmeditor.vb
字号:
End If
End Sub
'取消上下标
Private Sub CancelCharOffSet()
Me.RichTextBox1.SelectionCharOffset = 0
End Sub
'对齐方式
Private Sub SetAligment(ByVal flag As Integer)
Select Case flag
Case 1
Me.RichTextBox1.SelectionAlignment = HorizontalAlignment.Left
Case 2
Me.RichTextBox1.SelectionAlignment = HorizontalAlignment.Right
Case 3
Me.RichTextBox1.SelectionAlignment = HorizontalAlignment.Center
End Select
End Sub
Private Sub Print()
Dim streamToPrint As New StringReader(Me.RichTextBox1.Text)
'Assumes the default printer
Dim pd As New TextPrintDocument(streamToPrint, Me.RichTextBox1.Font)
If Not (storedPageSettings Is Nothing) Then
pd.DefaultPageSettings = storedPageSettings
End If
Dim dlg As New PrintDialog
dlg.Document = pd
Dim result As DialogResult = dlg.ShowDialog()
If result = DialogResult.OK Then
pd.Print()
End If
End Sub
Private Sub PrintSetup()
Try
Dim psDlg As New PageSetupDialog
If storedPageSettings Is Nothing Then
storedPageSettings = New PageSettings
End If
psDlg.PageSettings = storedPageSettings
psDlg.ShowDialog()
Catch ex As Exception
MessageBox.Show(("An error occurred - " + ex.Message))
End Try
End Sub
Private Sub PrintPreview()
Try
Dim streamToPrint As New StringReader(Me.RichTextBox1.Text)
'Assumes the default printer
Dim pd As New TextPrintDocument(streamToPrint, Me.RichTextBox1.Font)
If Not (storedPageSettings Is Nothing) Then
pd.DefaultPageSettings = storedPageSettings
End If
Dim dlg As New PrintPreviewDialog
dlg.Document = pd
dlg.ShowDialog()
Catch ex As Exception
MessageBox.Show(("An error occurred attempting to preview the file to print - " + ex.Message))
End Try
End Sub
Private Sub Undo()
Me.RichTextBox1.Undo()
End Sub
'查找与替换
Private Sub FindAndReplace()
If findwindow Is Nothing Then
Exit Sub
End If
If Me.RichTextBox1.SelectedText <> String.Empty Then
findwindow.cboFind.Text = Me.RichTextBox1.SelectedText
End If
findwindow.Show()
End Sub
'缩放
Private Sub ZoomInOut(ByVal isZoomOut As Boolean)
Dim zoom As Single = 0
zoom = Me.RichTextBox1.ZoomFactor
If isZoomOut Then
zoom -= 0.1
Else
zoom += 0.1
End If
If zoom < 0.64 Or zoom > 64 Then
Exit Sub
End If
Me.RichTextBox1.ZoomFactor = zoom
End Sub
'插入行号
Private Sub InsertLineNum()
Me.LineNumWindow.Visible = True
End Sub
#End Region
#Region "事件驱动"
'工具栏按钮事件
Private Sub ToolBar1_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick
Select Case e.Button.Tag
Case "New"
Me.NewFile()
Case "Open"
Me.OpenFile()
Case "Save"
Me.SaveFile()
Case "Copy"
Me.Copy()
Case "Cut"
Me.Cut()
Case "Paste"
Me.Paste()
Case "Bold"
Me.SetBold()
Case "Italic"
Me.SetItalic()
Case "UnderLine"
Me.SetUnderline()
Case "FontSizeUp"
Me.SetFontSize(True)
Case "FontSizeDown"
Me.SetFontSize(False)
Case "FontColor"
Me.SetColor()
Case "Bullet"
Me.SetBullet()
Case "IndentDown"
Me.SetIndent(False, False)
Case "IndentUp"
Me.SetIndent(False, True)
Case "AligmentLeft"
Me.SetAligment(1)
Case "AligmentRight"
Me.SetAligment(2)
Case "AligmentMiddle"
Me.SetAligment(3)
Case "Undo"
Me.Undo()
Case "Find"
Me.FindAndReplace()
Case "ZoomIn"
Me.ZoomInOut(False)
Case "ZoomOut"
Me.ZoomInOut(True)
Case "LineNum"
Me.InsertLineNum()
End Select
End Sub
'--------------------------------------------------------------------------------
'菜单事件
Private Sub mnuFileOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFileOpen.Click
Me.OpenFile()
End Sub
Private Sub mnuFileSaveAs_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFileSaveAs.Click
Me.SaveAs()
End Sub
Private Sub mnuFileNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFileNew.Click
Me.NewFile()
End Sub
Private Sub mnuFileSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFileSave.Click
Me.SaveFile()
End Sub
Private Sub mnuEditSelectAll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuEditSelectAll.Click
Me.SelectAll()
End Sub
Private Sub mnuEditCut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuEditCut.Click
Me.Cut()
End Sub
Private Sub mnuEditClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuEditClear.Click
Me.Clear()
End Sub
Private Sub mnuEditCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuEditCopy.Click
Me.Copy()
End Sub
Private Sub mnuEditPaste_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuEditPaste.Click
Me.Paste()
End Sub
'显示/隐藏工具栏
Private Sub mnuViewToolBar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuViewToolBar.Click
mnuViewToolBar.Checked = Not mnuViewToolBar.Checked
Me.ToolBar1.Visible = mnuViewToolBar.Checked
End Sub
'显示/隐藏状态条
Private Sub mnuViewStatusBar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuViewStatusBar.Click
mnuViewStatusBar.Checked = Not mnuViewStatusBar.Checked
Me.StatusBar1.Visible = mnuViewStatusBar.Checked
End Sub
Private Sub mnuFormatFont_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFormatFont.Click
Me.SelectFont()
End Sub
Private Sub mnuFormatColor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFormatColor.Click
Me.SetColor()
End Sub
Private Sub mnuIndentUp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuIndentUp.Click
Me.SetIndent(False, True)
End Sub
Private Sub mnuIndentDown_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuIndentDown.Click
Me.SetIndent(False, False)
End Sub
Private Sub mnuHangingIndentUp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuHangingIndentUp.Click
Me.SetIndent(True, True)
End Sub
Private Sub mnuHangingIndentDown_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuHangingIndentDown.Click
Me.SetIndent(True, False)
End Sub
Private Sub mnuSetCharOffsetUp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuSetCharOffsetUp.Click
Me.SetCharOffSet(True)
End Sub
Private Sub mnuSetCharOffsetDown_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuSetCharOffsetDown.Click
Me.SetCharOffSet(False)
End Sub
Private Sub mnuCancelCharOffset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuCancelCharOffset.Click
Me.CancelCharOffSet()
End Sub
Private Sub mnuLeftAligment_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuLeftAligment.Click
Me.SetAligment(1)
End Sub
Private Sub mnuRightAligment_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuRightAligment.Click
Me.SetAligment(2)
End Sub
Private Sub mnuAligmentMiddle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuAligmentMiddle.Click
Me.SetAligment(3)
End Sub
Private Sub mnuPrintPreview_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuPrintPreview.Click
Me.PrintPreview()
End Sub
Private Sub mnuPrintSetup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuPrintSetup.Click
Me.PrintSetup()
End Sub
Private Sub mnuPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuPrint.Click
Me.Print()
End Sub
Private Sub mnuFind_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFind.Click
Me.FindAndReplace()
End Sub
#End Region
Private Sub mnuZoomIn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuZoomIn.Click
Me.ZoomInOut(False)
End Sub
Private Sub mnuZoomOut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuZoomOut.Click
Me.ZoomInOut(True)
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Me.StatusBarPanel3.Text = Now
End Sub
Private Sub RichTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
End Sub
Private Sub RichTextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs)
showstatus()
End Sub
Private Sub ShowStatus()
Me.StatusBarPanel2.Text = " 总字数:" & CStr(Me.RichTextBox1.TextLength)
If Me.RichTextBox1.Modified Then
Me.StatusBarPanel2.Text += " 已改动 "
End If
End Sub
Private Sub RichTextBox1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs)
ShowStatus()
End Sub
Private Sub mnuInsertLineNum_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuInsertLineNum.Click
Me.InsertLineNum()
End Sub
Private Sub mnuAbout_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuAbout.Click
Dim frm As New frmAbout
frm.ShowDialog()
frm = Nothing
End Sub
Private Sub RichTextBox1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RichTextBox1.SelectionChanged
Dim _font As Font
_font = Me.RichTextBox1.SelectionFont
If Not (_font Is Nothing) Then
Me.btnBold.Pushed = _font.Bold
Me.btnItalic.Pushed = _font.Italic
Me.btnUnderLine.Pushed = _font.Underline
End If
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -