模拟Windows中的记事本程序设计一个”记事本”应用程序

模拟Windows中的记事本程序设计一个”记事本”应用程序,第1张

Private Sub Form_Load() '设置程序大小

Form1.Height = 7700

Form1.Width = 11000

End Sub

Private Sub Form_Resize() '设置richtextbox属性 窗体大小改变会触发的事件

On Error Resume Next '如果出现错误,忽略错误,继续执行

RichTextBox1.Top = 900

RichTextBox1.Left = 20

RichTextBox1.Height = ScaleHeight - 40

RichTextBox1.Width = ScaleWidth - 40

End Sub

Private Sub MenuNew_Click() '新建

RichTextBox1.Text = "" '清空文本

FileName = "未命名" '通过对话框获取的文件名为未命名

Form1.Caption = FileName

End Sub

Private Sub MenuOpen_Click() '打开

CommonDialog1.Filter = "文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文件(*.*)|*.*" '文件格式

CommonDialog1.ShowOpen'显示打开文件对话框

RichTextBox1.Text = ""'清空文本框

FileName = CommonDialog1.FileName '定义文件名

RichTextBox1.LoadFile FileName

Form1.Caption = "记事本:" &FileName

End Sub

Private Sub MenuSave_Click()'保存

With CommonDialog1'设置保存对话框

.DefaultExt = "txt"'设置保存文件的默认扩展名

.InitDir = "d:\" '设置初始目录

.FileName = "记事本.txt"'设置保存的默认文件名

.Filter = "文本文件察尺|*.txt|all files(*.*)|*.*" '过滤文件类型

.FilterIndex = 1 '设置文件类型列表框默认为文本文件

.Action = 2'设置通用对话框为另存为对话框

End With

Open CommonDialog1.FileName For Output As #1 '打开指定的文件写入数据

Print #1, RichTextBox1.Text '将整个败樱高文本框的内容一次性的写入文件

Close #1 '关闭#1号文件

End Sub

Private Sub MenuExit_Click() '退出

Dim result As Integer '定义整型

If Me.Caption = "新文件" And RichTextBox1.Text = "" Then'判断用户是否修改了文件

Unload Me

Else '若用户修改了文件,则d出消息框询问用户是否要保存文件

result = MsgBox("您已经对文件作了颂核修改,要保存吗?", vbYesNoCancel, "提示")

Select Case result'选择选定

Case 6 '单击了Yes按钮,是

MenuSave_Click

Case 2 '单击了Cancel按钮,取消

Exit Sub

Case 7 '单击了No按钮,否

Unload Me

End Select

End If

End Sub

Private Sub Form_Unload(Cancel As Integer) '退出

Dim result As Integer

If Me.Caption = "新文件" And RichTextBox1.Text = "" Then'判断用户是否修改了文件

Unload Me

Else '若用户修改了文件,则d出消息框询问用户是否要保存文件

result = MsgBox("您已经对文件作了修改,要保存吗?", vbYesNoCancel, "提示")

Select Case result

Case 6 '单击了Yes按钮

MenuSave_Click

Case 2 '单击了Cancel按钮

Exit Sub

Case 7 '单击了No按钮

Unload Me

End Select

End If

End Sub

Private Sub MenuSelectAll_Click()'全选

RichTextBox1.SelStart = 0 '选取文本的起始位置

RichTextBox1.SelLength = Len(RichTextBox1.Text) '选取文本的字符个数

RichTextBox1.SetFocus '把光标移到指定的文本框中

End Sub

Private Sub MenuCut_Click()'剪切

Clipboard.Clear '清空剪贴板内容

Clipboard.SetText RichTextBox1.SelText '设置剪贴板内容为选定文本

RichTextBox1.SelText = ""'删除文本框中选定内容

End Sub

Private Sub MenuCopy_Click() '复制

Clipboard.Clear'清空剪贴板内容

Clipboard.SetText RichTextBox1.SelText '将选定文本复制到剪贴板

End Sub

Private Sub MenuPaste_Click() '粘贴

RichTextBox1.SelText = Clipboard.GetText '将剪贴板上的内容复制到文本框中

End Sub

Private Sub MenuFont_Click() '设置字体

CommonDialog1.Flags = cdlCFBoth Or cdlCFEffects 'cdlCFBoth 对话框列出可用的打印机和屏幕字体. cdlCFEffects 对话框允许删除线,下划线,以及颜色效果。

CommonDialog1.ShowFont'显示“字体”对话框

RichTextBox1.SelFontName = CommonDialog1.FontName'设置字体

RichTextBox1.SelFontSize = CommonDialog1.FontSize'设置字号

RichTextBox1.SelBold = CommonDialog1.FontBold'设置是否以粗体显示

RichTextBox1.SelItalic = CommonDialog1.FontItalic'设置是否以斜体显示

RichTextBox1.SelStrikeThru = CommonDialog1.FontStrikethru '设置是否显示删除线

RichTextBox1.SelUnderline = CommonDialog1.FontUnderline '设置是否显示下划线

RichTextBox1.SelColor = CommonDialog1.Color '设置字的颜色

End Sub

Private Sub MenuColor_Click()'背景颜色

CommonDialog1.Flags = 2 '打开完整的对话框

CommonDialog1.ShowColor '显示“颜色”对话框

RichTextBox1.BackColor = CommonDialog1.Color '背景颜色为通用对话框选定的颜色

End Sub

Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 2 Then'd出式菜单

PopupMenu MenuEdit, vbPopupMenuLeftAlign 'd出式菜单显示编辑下拉菜单,鼠标在d出式菜单左上角

Else

Exit Sub

End If

End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) '工具条

On Error Resume Next'如果出现错误,忽略错误,继续执行

Select Case Button.Key '按关键字选择

Case "新建"

MenuNew_Click

Case "打开"

MenuOpen_Click

Case "保存"

MenuSave_Click

Case "剪切"

MenuCut_Click

Case "复制"

MenuCopy_Click

Case "粘贴"

MenuPaste_Click

Case "粗体"

RichTextBox1.SelBold = Not RichTextBox1.SelBold

Case "斜体"

RichTextBox1.SelItalic = Not RichTextBox1.SelItalic

Case "下划线"

RichTextBox1.SelUnderline = Not RichTextBox1.SelUnderline

Case "左对齐"

RichTextBox1.SelAlignment = 0

Case "居中"

RichTextBox1.SelAlignment = 2

Case "右对齐"

RichTextBox1.SelAlignment = 1

Case "字体设置"

MenuFont_Click

Case "背景颜色"

MenuColor_Click

End Select

End Sub

Private Sub MenuUsage_Click() 'ActiveX 公用帮助

With CommonDialog1

.HelpFile = "c:\windows\help\vbcmn96.hlp"

.HelpCommand = &HB Or cdlHelpSetContents

.ShowHelp

End With

End Sub

Private Sub MenuAbout_Click() '关于

MsgBox "记事本 土木分院 土0801-5 风云 制作", vbOKOnly, "关于" 'vbOKOnly 只显示 OK 按钮

End Sub

Private Sub Timer1_Timer() '自助计时器

Label1.FontSize = 24

Label1.FontName = "宋体"

Label1.Caption = "Time: " &Time

End Sub

【原创回答】你应该指的是OpenGL吧,而不是OpengJL。windows下完全可以使用Opengl实现你说拆纳的这些需求。而win7原生态支持为Opengl图形库,在其他版衡御碰本的windows下,需求下载Opengl的开发库。

这个可以到Opengl官网下载即可。当咐谈然,在windows平台下也可以用DirectX来代替OpenGL。

装好WIN10系统之后消裤,我第一个测试的当然是51和ARM都会使用的KEIL软件,因为我一直使用消尘的是KEIL4,版本算是比较稳定,在WIN7系统上可稳定拿桥简工作。在WIN10上安装和打开KEIL4一切正常,编译和常用的设置也没有出现BUG。经过一个月的测试,工作稳定。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8242001.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存