请问如何将文本框内的一些特殊字符进行彩色突出显示

yongtang 2003-05-10 09:39:21
请问各位高手:
我在用Windows Script Debugger时,发现当我输入html时,程序会自动将html四个字符变成咖啡色,输入<img src时,src就自动变成了红色。请问VB中如何实现这样的功能呢?就是遇到一些特定的字符串,它能够自动进行彩色的突出显示?
...全文
166 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yongtang 2003-05-11
  • 打赏
  • 举报
回复
to bdhh(Silent):我是个初学者,不太懂分析键盘输入的意思,望指点一下吧,分不够可以再加~

分析键盘是不是指,每当我有一个keypress事件发生时就去检测一下,可是我觉得好象不太可行啊……
yongtang 2003-05-11
  • 打赏
  • 举报
回复
这个程序很有趣啊~

非常感谢诸位的参与了!尤其感谢danielinbiti(金)

结帖!
danielinbiti 2003-05-11
  • 打赏
  • 举报
回复
Dim t As String
Dim old_pos As Long
Private Sub RichTextBox1_KeyPress(KeyAscii As Integer)
RichTextBox1.Find (Chr((KeyAscii))), RichTextBox1.SelStart = Len(RichTextBox1.Text)
RichTextBox1.Span (Chr((KeyAscii)))
RichTextBox1.SelColor = vbBlack
t = t & Chr(KeyAscii)
If KeyAscii = 8 Then old_pos = Len(RichTextBox1.Text) - 1
If KeyAscii = 32 Then
If LCase(Trim(t)) = "html" Then
RichTextBox1.SelStart = 0
RichTextBox1.Find (Trim(t)), old_pos
RichTextBox1.Span (Trim(t))
RichTextBox1.SelColor = vbRed
End If
old_pos = Len(RichTextBox1.Text)
t = ""
End If
RichTextBox1.SelStart = Len(RichTextBox1.Text)
End Sub
这个是简单的例子,当然还有许多问题没处理.如果要判断,肯定得带个数据库,用来存关键字:(
BadCatw 2003-05-11
  • 打赏
  • 举报
回复
用 richtextbox 好慢的.. 不知那些分色显示的编辑器怎么做出来的..打开100多K的还是那么快.
胖河马 2003-05-11
  • 打赏
  • 举报
回复
语法着色用richtextbox和正则表达试
不能用timer,你需要分析键盘输入
胖河马 2003-05-11
  • 打赏
  • 举报
回复
比如,如果判断按下的是字母键,就检查当前位置至前一个空格组成的是不是关键字。
不过还得考虑""中的情况,挺麻烦的样子
yongtang 2003-05-10
  • 打赏
  • 举报
回复
可是我怎样让程序知道我输入了html四个字后,程序就将它转换成红色,而我输入hmtl,程序就不进行任何颜色的转换?

用timer控件不断对我输入的字符串进行监视吗?这样是不是会很浪费资源?
danielinbiti 2003-05-10
  • 打赏
  • 举报
回复
同意楼上,只能用richtextbox
bhhxd 2003-05-10
  • 打赏
  • 举报
回复
用RichTextBox控件

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧