求用VB做一个记事本的简单程序

作者&投稿:徐悦 (若有异议请与网页底部的电邮联系)
【用VB编写的程序代码】编写一个类似记事本功能的文字编辑程序。~

这才是功能强大的记事本!!!

可以使用vb6的向导来做。

Dim fileno As Integer '定义文件号变量
Dim f_name As String '定义文件名变量
Dim s, s1 As String '定义字符串变量,用来读取文件内容

'定义过程openfile,用来实现打开文件的功能,供其他代码调用
'避免代码的重复编写
Sub openfile()
'利用对话框控件设置“打开”对话框中可以选择的文件类型
cd1.Filter = "文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"
'利用对话框控件设置“打开”对话框中默认的文件过滤器为1,
'即文本文件
cd1.FilterIndex = 1
cd1.ShowOpen '利用对话框控件显示“打开”对话框
f_name = cd1.FileName '保存打开的文件名
If f_name <> "" Then
fileno = FreeFile '用FreeFile函数产生一个新的文件号
'设置当前打开的文件操作为读出文件的内容
Open f_name For Input As #fileno
s1 = ""
Do Until EOF(fileno) '当文件还没有独到文件尾时
'每次读出文件完整的一行放到字符串“s”中
Line Input #fileno, s
'在“s”字符串后加上回车符,并与保存之前文件内容的字符串“s1”合并
s1 = s1 + s + vbCrLf
Loop
Text1.Text = s1 '在文本框Text1中显示打开的文件的内容
Close #fileno '关闭文件号所指向的文件
End If
End Sub

'定义一个过程savefile,用来实现保存文件的功能,
'供其他代码调用
Sub savefile()
'利用对话框控件设置“打开”对话框中可以选择的文件类型
cd1.Filter = "文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"
'利用对话框控件设置“打开”对话框中默认的文件过滤器为1,
'即文本文件
cd1.FilterIndex = 1
cd1.DefaultExt = txt '设置默认的扩展名是“txt”
'如果文件已存在,则显示一个信息框,
'询问用户是否覆盖已有的文件
cd1.Flags = cdlOFNOverwritePrompt
cd1.ShowSave '利用对话框控件显示“另存为”对话框
f_name = cd1.FileName
If f_name <> "" Then
fileno = FreeFile '用FreeFile函数产生一个新的文件号
'设置当前打开的文件操作为向文件写入内容
Open f_name For Output As #fileno
Print #fileno, Text1.Text '把文本框中的内容写入文件
Close #fileno '关闭文件号所指向的文件
End If
End Sub

Private Sub mnuaboat_Click()
cd1.HelpCommand = cdlHelpContents
cd1.HelpFile = "C:\Windows\Help\Notepad.HLP"
cd1.ShowHelp
End Sub

Private Sub mnucenter_Click()
mnucenter.Checked = Not mnucenter.Checked
If mnucenter.Checked = True Then
Text1.Alignment = 2
mnuright.Checked = False
mnuleft.Checked = False
Else
Text1.Alignment = 0
End If
End Sub

Private Sub mnucopy_Click()
Clipboard.Clear '清除当前剪贴板上的内容
'把文本框Text1中选中的内容拷贝到剪贴板上
Clipboard.SetText Text1.SelText
End Sub

Private Sub mnucut_Click()
Clipboard.Clear '清除当前剪贴板上的内容
'把文本框Text1中选中的内容拷贝到剪贴板上
Clipboard.SetText Text1.SelText
Text1.SelText = "" '清除文本框Text1中选中的内容
End Sub

Private Sub mnuedit_Click()
'当文本框Text1中有文字被选中时,剪切、复制子菜单项才有效
mnucut.Enabled = (Text1.SelLength > 0)
mnucopy.Enabled = (Text1.SelLength > 0)
End Sub

Private Sub mnuend_Click()
End
End Sub

Private Sub mnufont_Click()
cd1.Flags = &H1 Or &H100
cd1.FontName = Text1.FontName
cd1.ShowFont '显示“字体”对话框
'用“字体”对话框中选择的字体设置文本框中的字体
Text1.FontBold = cd1.FontBold
Text1.FontItalic = cd1.FontItalic
Text1.FontName = Text1.FontName
Text1.FontSize = cd1.FontSize
Text1.FontStrikethru = cd1.FontStrikethru
Text1.FontUnderline = cd1.FontUnderline
Text1.ForeColor = cd1.Color
End Sub

Private Sub mnuleft_Click()
mnuleft.Checked = Not mnuleft.Checked
If mnuleft.Checked = True Then
Text1.Alignment = 0
mnuright.Checked = False
mnucenter.Checked = False
Else
Text1.Alignment = 0
End If
End Sub

Private Sub mnunew_Click()
Text1.Text = ""
End Sub

Private Sub mnuopen_Click()
openfile
End Sub

Private Sub mnupaste_Click()
'把剪贴板上的内容复制到文本框中
Text1.SelText = Clipboard.GetText
End Sub

Private Sub mnuright_Click()
mnuright.Checked = Not mnuright.Checked
If mnuright.Checked = True Then
Text1.Alignment = 1
mnuleft.Checked = False
mnucenter.Checked = False
Else
Text1.Alignment = 0
End If
End Sub

Private Sub mnusave_Click()
savefile
End Sub

Private Sub mnutoolbar_Click()
Toolbar1.Visible = Not Toolbar1.Visible
End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Index
Case Is = 1
Text1.Text = ""
Case Is = 2
openfile
Case Is = 3
savefile
Case Is = 5
Text1.FontBold = Not Text1.FontBold
Case Is = 6
Text1.FontItalic = Not Text1.FontItalic
Case Is = 7
Text1.FontUnderline = Not Text1.FontUnderline
Case Is = 9
mnucut_Click
Case Is = 10
mnucopy_Click
Case Is = 11
mnupaste_Click
Case Is = 13
mnuleft_Click
Case Is = 14
mnucenter_Click
Case Is = 15
mnuright_Click
End Select
End Sub

窗体设计和源代码都发你邮箱了,简易文本编辑器还是比较简单的,以后还是自己编写吧

Option Explicit
Dim t As Boolean
Dim saveNot As Boolean

Private Sub about_Click()
MsgBox "VB记事本 ", vbOKOnly, "关于"
End Sub

Private Sub all_Click()
Clipboard.Clear
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End Sub

Private Sub copy_Click()
Clipboard.Clear
Clipboard.SetText Text1.SelText
End Sub

Private Sub delete_Click()
Text1.SelText = ""
End Sub

Private Sub exit_Click()
Unload Me
End Sub

Private Sub Form_Unload(Cancel As Integer)
Dim f As Integer
If t Then
f = MsgBox("文件即将退出,需要保存吗?", vbYesNo + vbExclamation + vbDefaultButton2, "提示")
If f = 6 Then
Call save_Click
Else
End
End If
Else
End
End If
End Sub

Private Sub jianqie_Click()
Clipboard.Clear
Clipboard.SetText Text1.SelText
Text1.SelText = ""
End Sub

Private Sub numnew_Click()
Dim x As Integer
If saveNot Then
x = MsgBox("文件已更改 是否保存更改", vbYesNoCancel + vbExclamation, "记事本")
If x = 6 Then
save_Click
ElseIf x = 7 Then
Text1.Text = ""
Else
Text1.SetFocus
End If
Else
Text1.Text = ""
End If
End Sub

Private Sub open_Click()
Dim iname As String, s As String
CommonDialog1.Filter = "*.txt(文本文件)|*.txt"
CommonDialog1.ShowOpen
iname = CommonDialog1.FileName
Open iname For Input As #11
Do While Not EOF(11)
s = s & Input(1, 11)
Loop
Text1.Text = s
Close 11
End Sub

Private Sub save_Click()
Dim oname As String, n As String, s As String
CommonDialog1.Filter = "*.txt(文本文件)|*.txt"
CommonDialog1.ShowSave
oname = CommonDialog1.FileName
Open oname For Output As #12
s = Text1.Text
Print #12, s
Close 12
t = False
End Sub

Private Sub Text1_Change()
t = True
End Sub

Private Sub zhantie_Click()
Text1.SelText = Clipboard.GetText()
End Sub

Private Sub ziti_Click()
CommonDialog1.Flags = 1
CommonDialog1.ShowFont
Text1.FontBold = CommonDialog1.FontBold
Text1.FontSize = CommonDialog1.FontSize
Text1.FontName = CommonDialog1.FontName
End Sub

2楼的代码不错,想得很周到
1楼的代码有几处小问题:

1.
Private Sub all_Click()
'Clipboard.Clear '这里可以不用清空剪切板
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End Sub

2.
Private Sub numnew_Click()
Dim x As Integer
If t Then '除了在这过程用到saveNot变量,其他地方没用到。
x = MsgBox("文件已更改 是否保存更改", vbYesNoCancel + vbExclamation, "记事本")

3.
Private Sub open_Click()
Dim iname As String, s As String, fnum As Integer
On Error Resume Next '----------
CommonDialog1.CancelError = True '-----------
CommonDialog1.Filter = "*.txt(文本文件)|*.txt"
CommonDialog1.ShowOpen
iname = CommonDialog1.FileName
If Err Then Exit Sub '当用户取消时,iname=""。为防止出错,加个判断。
fnum=FreeFile '-----------
Open iname For Input As #fnum '-------
Do While Not EOF(fnum) '------
s = s & Input(1, fnum) '------
Loop
Text1.Text = s
Close fnum '------

4.
Private Sub save_Click()
Dim oname As String, n As String, s As String, fnum As Integer
On Error Resume Next '----------
CommonDialog1.CancelError = True '-----------
CommonDialog1.Filter = "*.txt(文本文件)|*.txt"
CommonDialog1.ShowSave
oname = CommonDialog1.FileName
If Err Then Exit Sub '原因同上
fnum=FreeFile
Open oname For Output As #fnum '----
s = Text1.Text
Print #fnum, s '-----
Close fnum '-------
t = False
End Sub

5.
'当文本框被清空时,不需要作保存的提示
Private Sub Text1_Change()
If Text1="" Then
t=False
Else
t=True
End If
End Sub

6.
Private Sub ziti_Click()
On Error Resume Next '----------
CommonDialog1.CancelError = True '-----------
CommonDialog1.Flags = 1
CommonDialog1.ShowFont
If Err Then Exit Sub '---------
Text1.FontBold = CommonDialog1.FontBold
Text1.FontSize = CommonDialog1.FontSize
Text1.FontName = CommonDialog1.FontName
End Sub


急求用VB做一个记事本软件代码.
Where1 = InStr(Text1.Text, Search) '在文本中查找字符串 If Where1 Then '若找到则设置选定的起始位置并使找到的字符串高亮 Text1.SelStart = Where1 - 1 Text1.SelLength = Len(Search)' Me.Caption = Where1 '测试用 '否则给出提示 Else: MsgBox "未找到所要查找的字符串。", ...

帮我用VB制作一个记事本应用程序
Underline = comDlg.FontUnderline MainTxtBox.SelColor = comDlg.Color End Sub Private Sub mmuNew_Click()warning = MsgBox("当前的文档将会丢失,您确认要新建文档吗?", vbOKCancel, "Warning!")'warning If warning = vbCancel Then Else If warning = vbOK Then MainTxtBox.Text = ""...

如何用VB建个记事本,创建乱码文件?
Function Garbage(txt As TextBox, Max As Long)Dim num As Long '乱码代号 If Len(txt) < Max Then num = Round(Rnd * 45)'假如num等于一个数,那么txt就加上一个字符 '这样就可以生成乱码了 If num = 1 Then txt = txt & " "If num = 2 Then txt = txt & "~"If num = 3...

用VB编写记事本简单程序
代码如下:Private Sub Command1_Click() '复制 Clipboard.SetText Text1.SelText End Sub Private Sub Command2_Click() '剪切 Clipboard.SetText Text1.SelText Text1.SelText = ""End Sub Private Sub Command3_Click() '粘贴 Text1.SelText = Clipboard.GetText()End Sub Private ...

VB “简单记事本”
说下思路啊,在窗体上添加一个文本框组件就可以了,文本框需要关心首先是改变大小,要么就做一个大小不可改变的文本框和窗体。菜单的使用VB里有菜单设计器,很简单的操作,这个不会,我也木有办法。打开功能,用通用Diag组件,简单设置一下属性,和检查读取属性就可以了。打开功能的重点在于对文件打开...

使用VB程序,设计一个具有复制、剪切、粘贴、保存、字体设置、字型设置...
我以前做过一个,不过功能有所不同,有菜单和弹出菜单,字体设置,字型设置,颜色等,给你做一下参考。留下邮箱给你发过去。源代码:Private Sub Blue_Click()Text1.ForeColor = vbBlue End Sub Private Sub Form_Load()Red.Enabled = False Blue.Enabled = False Green.Enabled = False Bld....

vb制作记事本如何实现查找下一个的功能?
dim sFind as string, lastPos private sub Find_Click()on error resume next sFind=text2.text lastPos=instr(0,text1.text,sFind)if lastPos<>-1 then text1.selstart=lastPos-1 text1.sellength=len(sFind)end if end sub private sub FindNext_Click()on error resume next if sFind=...

记事本VB应用程序代码编写
CommonDialog1.Filter = "文本文档(*.txt)│*.txt│RTF文档(*.rtf)│*.rtf│所有文件(*.*)│*.*"CommonDialog1.ShowOpen RichTextBox1.Text = "" ’清空文本框 FileName = CommonDialog1.FileName RichTextBox1.LoadFile FileName Me.Caption = "超级记事本:" & FileName End Sub ’...

用VB做记事本```怎样实现“打开”?
有两种方法可以实现,一是直接使用VB的CommonDialog,即在控件里加载:Microsoft Common Dialog Control 6.0 ,或者使用API :GetOpenFileName来实现,第一种比较简单,可以直接使用,第二种需要写一些代码才可以实现。

...一个简单记事本软件的设计与实现 用vb编写
方法一:commondialog控件一个---comopen richtextbox一个,作为文本框 两个菜单:文件,下有新建,打开,保存,字体,退出,打印.编辑,下有查找,查找下一个 Option Explicit Public sFind As String Private Sub Form_Resize()'如果窗体不处于最小化RichTextBox1状态,改变RichTextBox1大小以适应窗体大小变...

临西县19172326632: VB制作一个记事本的代码 -
欧阳哑天罗: 参考了一个别人编写的,比较简单,有注释:Private Sub Form_Resize() 'form窗体的重设尺寸 If Form1.Width - 150 > 0 Then '如果FORM1宽度减去150大于0 那么 Text1.Width = Form1.Width - 150 'text1宽度等于form1的宽度减去150 Else '否则 ...

临西县19172326632: VB写个简单记事本~~~求代码!拜托各位大神 -
欧阳哑天罗: 在窗体上创建一个菜单,如下 一级菜单:文件 二级菜单 新建 打开 保存 退出 窗体上添加一个RichtextBox控件,一个CommonDialog控件,编写如下代码: Private Sub Form_Resize() RichTextBox1.Left = Form1.ScaleLeft RichTextBox1.Top = ...

临西县19172326632: 求VB制作简易记事本代码 -
欧阳哑天罗: 新建文件Private Sub mnuNew_Click()RichTextBox1.Text = "" 注释:清空文本框FileName = "未命名"Me.Caption = FileNameEnd Sub注释:打开文件Private Sub mnuOpen_Click()CommonDialog1.Filter = "文本文档(*.txt)|*.txt...

临西县19172326632: 用VB做一个简单的记事本
欧阳哑天罗: 添加部件 Microsoft Common Dialog Control 6.0 2个command 1 个TEXT Private Sub Command1_Click() '打开 Dim S As String On Error GoTo Err CommonDialog1.ShowOpen Open CommonDialog1.FileName For Binary As #1 S = Space(...

临西县19172326632: 怎样用VB编写一个简单的记事本 -
欧阳哑天罗: 加个菜单,加个工具栏,加个壮态栏,加个RICHEDIT文本框控件

临西县19172326632: 用VB制作一个简单记事本问题! -
欧阳哑天罗: Private Sub cmd_Open_Click() Dim FileN$, FreeF%, T$ cmd_dlg.Filter = "文本文件(*.txt)|*.txt" cmd_dlg.CancelError = True On Error GoTo endsub cmd_dlg.ShowOpen FreeF = FreeFile FileN = cmd_dlg.FileName Open FileN For Input As ...

临西县19172326632: 求用VB编写记事本代码
欧阳哑天罗: 代码如下: Private Sub Command1_Click() '复制 Clipboard.SetText Text1.SelText End Sub Private Sub Command2_Click() '剪切 Clipboard.SetText Text1.SelText Text1.SelText = "" End Sub Private Sub Command3_Click() '粘贴 Text...

临西县19172326632: vb的简单记事本的代码 -
欧阳哑天罗: '窗体代码 Option Explicit Dim filename As String Dim FileType As String Dim FiType As String Dim sFind As String Dim result As String Dim bWrap As Boolean Dim ask As Boolean Dim msgtext As String Dim Flag As String Private Sub Form_...

临西县19172326632: 用VB语言编写一个简易记事本要求要有文件编辑和视图下拉菜单并有新建打开剪切复制粘贴工具栏!速求过期不候 -
欧阳哑天罗: Private Declare Function GetObject Lib "gdi32 " Private Declare Function GetBitmapBits Lib "gdi32 " Private Declare Function SetBitmapBits Lib "gdi32 " Dim PicBits() As Byte, PicInfo As BITMAP, Cnt As Long Private Sub Command1_...

临西县19172326632: 求用VB做一个记事本的简单程序 -
欧阳哑天罗: Option Explicit Dim t As Boolean Dim saveNot As Boolean Private Sub about_Click() MsgBox "VB记事本 ", vbOKOnly, "关于" End Sub Private Sub all_Click() Clipboard.Clear Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len(Text...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网