📄 frmdoc.frm
字号:
VERSION 5.00
Object = "{3B7C8863-D78F-101B-B9B5-04021C009402}#1.2#0"; "richtx32.ocx"
Begin VB.Form frmDoc
BackColor = &H00FFFFC0&
BorderStyle = 0 'None
Caption = "Form1"
ClientHeight = 3720
ClientLeft = 3480
ClientTop = 2490
ClientWidth = 4905
Icon = "frmDoc.frx":0000
LinkTopic = "Form1"
MDIChild = -1 'True
ScaleHeight = 3720
ScaleWidth = 4905
ShowInTaskbar = 0 'False
Begin VB.PictureBox picLineNumbers
Appearance = 0 'Flat
BackColor = &H00C8D0D4&
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H80000008&
Height = 3135
Left = 0
ScaleHeight = 3105
ScaleWidth = 465
TabIndex = 4
Top = 360
Width = 495
End
Begin VB.TextBox Text1
BackColor = &H00FFFFFF&
ForeColor = &H00000000&
Height = 855
Left = 3360
MultiLine = -1 'True
ScrollBars = 3 'Both
TabIndex = 3
Top = 1800
Visible = 0 'False
Width = 1095
End
Begin VB.PictureBox Picture1
Align = 1 'Align Top
Appearance = 0 'Flat
BackColor = &H00000000&
ForeColor = &H80000008&
Height = 375
Left = 0
ScaleHeight = 345
ScaleWidth = 4875
TabIndex = 1
Top = 0
Width = 4905
Begin VB.PictureBox Picture3
Appearance = 0 'Flat
BackColor = &H00000000&
BorderStyle = 0 'None
ForeColor = &H80000008&
Height = 350
Left = 3960
ScaleHeight = 345
ScaleWidth = 855
TabIndex = 2
Top = 0
Width = 855
Begin VB.Image Image1
Height = 195
Left = 120
Picture = "frmDoc.frx":058A
Top = 45
Width = 195
End
Begin VB.Image Image2
Height = 195
Left = 360
Picture = "frmDoc.frx":07D4
Top = 45
Width = 195
End
Begin VB.Image Image3
Height = 195
Left = 600
Picture = "frmDoc.frx":0A1E
Top = 45
Width = 195
End
End
Begin VB.Image Image4
Height = 240
Left = 60
Picture = "frmDoc.frx":0C68
Top = 60
Width = 240
End
End
Begin RichTextLib.RichTextBox rtfText
Height = 2895
Left = 720
TabIndex = 0
Top = 480
Width = 2895
_ExtentX = 5106
_ExtentY = 5106
_Version = 393217
Enabled = -1 'True
ScrollBars = 2
Appearance = 0
OLEDropMode = 1
TextRTF = $"frmDoc.frx":11F2
End
Begin VB.Shape Shape1
BorderWidth = 2
Height = 1695
Left = 3360
Top = 1440
Width = 1335
End
End
Attribute VB_Name = "frmDoc"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private WithEvents oSyntax As CSyntax
Attribute oSyntax.VB_VarHelpID = -1
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const HTCAPTION = 2
' Subclassing constants
Const WM_NULL = &H0
Const WM_CREATE = &H1
Const WM_DESTROY = &H2
Const WM_MOVE = &H3
Const WM_SIZE = &H5
Const WM_ACTIVATE = &H6
Const WM_SETFOCUS = &H7
Const WM_KILLFOCUS = &H8
Const WM_ENABLE = &HA
Const WM_SETREDRAW = &HB
Const WM_SETTEXT = &HC
Const WM_GETTEXT = &HD
Const WM_GETTEXTLENGTH = &HE
Const WM_PAINT = &HF
Const WM_CLOSE = &H10
Const WM_QUERYENDSESSION = &H11
Const WM_QUIT = &H12
Const EM_SETSEL = 177
Const WM_QUERYOPEN = &H13
Const WM_ERASEBKGND = &H14
Const WM_SYSCOLORCHANGE = &H15
Const WM_ENDSESSION = &H16
Const WM_SHOWWINDOW = &H18
Const WM_SETTINGCHANGE = &H1A
Const WM_DEVMODECHANGE = &H1B
Const WM_ACTIVATEAPP = &H1C
Const WM_FONTCHANGE = &H1D
Const WM_TIMECHANGE = &H1E
Const WM_CANCELMODE = &H1F
Const WM_SETCURSOR = &H20
Const WM_MOUSEACTIVATE = &H21
Const WM_CHILDACTIVATE = &H22
Const WM_QUEUESYNC = &H23
Const WM_GETMINMAXINFO = &H24
Const WM_PAINTICON = &H26
Const WM_ICONERASEBKGND = &H27
Const WM_NEXTDLGCTL = &H28
Const WM_SPOOLERSTATUS = &H2A
Const WM_DRAWITEM = &H2B
Const WM_MEASUREITEM = &H2C
Const WM_DELETEITEM = &H2D
Const WM_VKEYTOITEM = &H2E
Const WM_CHARTOITEM = &H2F
Const WM_SETFONT = &H30
Const WM_GETFONT = &H31
Const WM_SETHOTKEY = &H32
Const WM_GETHOTKEY = &H33
Const WM_QUERYDRAGICON = &H37
Const WM_COMPAREITEM = &H39
Const WM_COMPACTING = &H41
Const WM_WINDOWPOSCHANGING = &H46
Const WM_WINDOWPOSCHANGED = &H47
Const WM_POWER = &H48
Const WM_COPYDATA = &H4A
Const WM_CANCELJOURNAL = &H4B
Const WM_NCCREATE = &H81
Const WM_NCDESTROY = &H82
Const WM_NCCALCSIZE = &H83
Const WM_NCHITTEST = &H84
Const WM_NCPAINT = &H85
Const WM_NCACTIVATE = &H86
Const WM_GETDLGCODE = &H87
Const WM_NCMOUSEMOVE = &HA0
Const WM_NCLBUTTONDOWN = &HA1
Const WM_NCLBUTTONUP = &HA2
Const WM_NCLBUTTONDBLCLK = &HA3
Const WM_NCRBUTTONDOWN = &HA4
Const WM_NCRBUTTONUP = &HA5
Const WM_NCRBUTTONDBLCLK = &HA6
Const WM_NCMBUTTONDOWN = &HA7
Const WM_NCMBUTTONUP = &HA8
Const WM_NCMBUTTONDBLCLK = &HA9
Const WM_KEYFIRST = &H100
Const WM_KEYDOWN = &H100
Const WM_KEYUP = &H101
Const WM_CHAR = &H102
Const WM_DEADCHAR = &H103
Const WM_SYSKEYDOWN = &H104
Const WM_SYSKEYUP = &H105
Const WM_SYSCHAR = &H106
Const WM_SYSDEADCHAR = &H107
Const WM_KEYLAST = &H108
Const WM_INITDIALOG = &H110
Const WM_COMMAND = &H111
Const WM_SYSCOMMAND = &H112
Const WM_TIMER = &H113
Const WM_HSCROLL = &H114
Const WM_VSCROLL = &H115
Const WM_INITMENU = &H116
Const WM_INITMENUPOPUP = &H117
Const WM_MENUSELECT = &H11F
Const WM_MENUCHAR = &H120
Const WM_ENTERIDLE = &H121
Const WM_CTLCOLORMSGBOX = &H132
Const WM_CTLCOLOREDIT = &H133
Const WM_CTLCOLORLISTBOX = &H134
Const WM_CTLCOLORBTN = &H135
Const WM_CTLCOLORDLG = &H136
Const WM_CTLCOLORSCROLLBAR = &H137
Const WM_CTLCOLORSTATIC = &H138
Const WM_MOUSEFIRST = &H200
Const WM_MOUSEMOVE = &H200
Const WM_LBUTTONDOWN = &H201
Const WM_LBUTTONUP = &H202
Const WM_LBUTTONDBLCLK = &H203
Const WM_RBUTTONDOWN = &H204
Const WM_RBUTTONUP = &H205
Const WM_RBUTTONDBLCLK = &H206
Const WM_MBUTTONDOWN = &H207
Const WM_MBUTTONUP = &H208
Const WM_MBUTTONDBLCLK = &H209
Const WM_MOUSELAST = &H209
Const WM_PARENTNOTIFY = &H210
Const WM_ENTERMENULOOP = &H211
Const WM_EXITMENULOOP = &H212
Const WM_MDICREATE = &H220
Const WM_MDIDESTROY = &H221
Const WM_MDIACTIVATE = &H222
Const WM_MDIRESTORE = &H223
Const WM_MDINEXT = &H224
Const WM_MDIMAXIMIZE = &H225
Const WM_MDITILE = &H226
Const WM_MDICASCADE = &H227
Const WM_MDIICONARRANGE = &H228
Const WM_MDIGETACTIVE = &H229
Const WM_MDISETMENU = &H230
Const WM_DROPFILES = &H233
Const WM_MDIREFRESHMENU = &H234
Const WM_CUT = &H300
Const WM_COPY = &H301
Const WM_PASTE = &H302
Const WM_CLEAR = &H303
Const WM_UNDO = &H304
Const WM_RENDERFORMAT = &H305
Const WM_RENDERALLFORMATS = &H306
Const WM_DESTROYCLIPBOARD = &H307
Const WM_DRAWCLIPBOARD = &H308
Const WM_PAINTCLIPBOARD = &H309
Const WM_VSCROLLCLIPBOARD = &H30A
Const WM_SIZECLIPBOARD = &H30B
Const WM_ASKCBFORMATNAME = &H30C
Const WM_CHANGECBCHAIN = &H30D
Const WM_HSCROLLCLIPBOARD = &H30E
Const WM_QUERYNEWPALETTE = &H30F
Const WM_PALETTEISCHANGING = &H310
Const WM_PALETTECHANGED = &H311
Const WM_HOTKEY = &H312
Const WM_PENWINFIRST = &H380
Const WM_PENWINLAST = &H38F
Const WM_USER = &H400
' SendMessage RTB constants
Const EM_GETLINE = &HC4
Const EM_GETLINECOUNT = &HBA
Const EM_LINELENGTH = &HC1
Const EM_LINEINDEX = &HBB
Const EM_LINEFROMCHAR = &HC9
Const EM_GETFIRSTVISIBLELINE = &HCE
Private Sub Form_Load()
Set oSyntax = New CSyntax
Form_Resize
End Sub
Public Sub 高亮()
On Error Resume Next
oSyntax.HighLightRichEdit Me.rtfText
End Sub
Private Sub Form_Resize()
On Error Resume Next
Picture3.Left = Me.Width - Picture3.Width - 120
If Picture1.Visible = False Then
rtfText.Move 500, 100, Me.ScaleWidth - 500, Me.ScaleHeight - 200
rtfText.RightMargin = rtfText.Width - 400
Shape1.Top = 0
Shape1.Height = Me.Height
ElseIf Picture1.Visible = True Then
rtfText.Move 500, Picture1.Top + Picture1.Height + 100, Me.ScaleWidth - 500, Me.ScaleHeight - Picture1.Height - 200
rtfText.RightMargin = rtfText.Width - 400
Shape1.Top = Picture1.Top + Picture1.Height
Shape1.Height = Me.Height - Picture1.Height
End If
Shape1.Left = 0
Shape1.Width = Me.Width
picLineNumbers.Top = rtfText.Top
picLineNumbers.Left = 0
picLineNumbers.Height = rtfText.Height
End Sub
Private Sub Form_Unload(Cancel As Integer)
If Left$(Me.Caption, 2) = "新建" Then
If MsgBox("文件没有保存.是否现在进行保存?", vbInformation + vbYesNo, "提示") = vbYes Then
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -