📄 6-2.frm
字号:
VERSION 5.00
Object = "{3B7C8863-D78F-101B-B9B5-04021C009402}#1.2#0"; "RICHTX32.OCX"
Begin VB.Form Form1
Caption = "Form1"
ClientHeight = 4305
ClientLeft = 60
ClientTop = 345
ClientWidth = 6315
LinkTopic = "Form1"
ScaleHeight = 4305
ScaleWidth = 6315
StartUpPosition = 3 '窗口缺省
Begin RichTextLib.RichTextBox RichTextBox2
Height = 1815
Left = 3480
TabIndex = 1
Top = 840
Width = 2055
_ExtentX = 3625
_ExtentY = 3201
_Version = 393217
Enabled = -1 'True
ScrollBars = 3
TextRTF = $"6-2.frx":0000
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 14.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin RichTextLib.RichTextBox RichTextBox1
Height = 2055
Left = 480
TabIndex = 0
Top = 720
Width = 2295
_ExtentX = 4048
_ExtentY = 3625
_Version = 393217
Enabled = -1 'True
ScrollBars = 3
TextRTF = $"6-2.frx":033D
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 14.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim selEffect As Integer
Private Sub Form_Load()
'设置控件RichTextBox1为手动OLE拖放方式
RichTextBox1.OLEDragMode = 1 'rtfOLEDragManual
RichTextBox1.OLEDropMode = rtfOLEDropManual
'设置控件RichTextBox2为手动OLE拖放方式
RichTextBox2.OLEDragMode = rtfOLEDragManual
RichTextBox2.OLEDropMode = rtfOLEDropManual
End Sub
Private Sub Form_Resize()
'修改文本框位置与大小
RichTextBox1.Left = ScaleLeft
RichTextBox1.Top = ScaleTop
RichTextBox1.Width = ScaleWidth / 2
RichTextBox1.Height = ScaleHeight
RichTextBox2.Top = ScaleTop
RichTextBox2.Left = ScaleWidth / 2
RichTextBox2.Width = ScaleWidth / 2
RichTextBox2.Height = ScaleHeight
End Sub
Private Sub RichTextBox1_MouseMove(Button As Integer, Shift As Integer, _
x As Single, y As Single)
If RichTextBox1.SelLength > 0 And Button > 0 Then
'源控件中有选择的文本,并按了鼠标键
RichTextBox1.OLEDrag '启动OLE拖动
End If
End Sub
Private Sub RichTextBox1_OLECompleteDrag(Effect As Long)
If Effect = vbDropEffectMove Then
'利用OLE拖放移动数据
RichTextBox1.SelText = "" '删除源控件中选择的文本
End If
End Sub
Private Sub RichTextBox1_OLEDragOver(Data As RichTextLib.DataObject, _
Effect As Long, Button As Integer, Shift As Integer, _
x As Single, y As Single, State As Integer)
If Button > 2 Then
'按鼠标其它键(多个键)
Effect = vbDropEffectNone
End If
If Button = 1 Then
'按鼠标左键,移动数据
Effect = Effect And vbDropEffectMove
End If
If Button = 2 Then
'按鼠标右键,复制数据
Effect = Effect And vbDropEffectCopy
End If
'记录拖放效果
selEffect = Effect
End Sub
Private Sub RichTextBox1_OLESetData(Data As RichTextLib.DataObject, _
DataFormat As Integer)
Data.SetData RichTextBox1.SelText, DataFormat '发送数据
End Sub
Private Sub RichTextBox1_OLEStartDrag(Data As RichTextLib.DataObject, _
AllowedEffects As Long)
'设置数据源允许的拖动效果
'允许复制或移动数据源数据
AllowedEffects = vbDropEffectCopy _
Or vbDropEffectMove
'设置数据源数据格式
Data.Clear '清数据源
Data.SetData , vbCFText '普通文本
Data.SetData , vbCFRTF 'RTF文本
End Sub
Private Sub RichTextBox2_LostFocus()
RichTextBox2.SelLength = 0 '清除文本选择
End Sub
Private Sub RichTextBox2_OLEDragDrop(Data As RichTextLib.DataObject, _
Effect As Long, Button As Integer, Shift As Integer, _
x As Single, y As Single)
If Data.GetFormat(vbCFText) Then
RichTextBox2.SelText = Data.GetData(vbCFText) '获得OLE数据
Effect = selEffect
Else
Effect = vbDropEffectNone
End If
End Sub
Private Sub RichTextBox2_OLEDragOver(Data As RichTextLib.DataObject, _
Effect As Long, Button As Integer, Shift As Integer, _
x As Single, y As Single, State As Integer)
If Button > 2 Then
'按鼠标其它键(多个键)
Effect = vbDropEffectNone
End If
If Button = 1 Then
'按鼠标左键,移动数据
Effect = Effect And vbDropEffectMove
End If
If Button = 2 Then
'按鼠标右键,复制数据
Effect = Effect And vbDropEffectCopy
End If
'记录拖放效果
selEffect = Effect
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -