CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

关于在text中顺序显示字符的问题!

楼主hylaeion(☆霖湘凝☆)2004-12-01 00:20:09 在 VB / 基础类 提问

 
        关于在text中顺序显示字符的问题!  
   
        现在已经知道有一个字符串(汉字),比如是:a=   “我是你的朋友。他也是你的朋友!”  
        这个字符串已经存在了,可是我想把他这样显示:  
        先显示“我是你的朋友。”在我点击后再显示下半句成为:“我是你的朋友。他也是你的朋友!”  
        这个句子的格式不固定,并且有时候还很长,有很多句组成,  
        应该如何实现点一下出一句这样的效果啊?  
   
        另外,还有个小问题:text的enabled属性为false时为什么text的颜色属性无效啊?  
   
        谢谢!!!  
   
  问题点数:20、回复次数:10Top

1 楼babyt(阿泰)回复于 2004-12-01 00:32:48 得分 0

1:enable为false的时候其他所有的属性都失效了,这是正常的  
  2:如果确定是以句号断句  
  可以这样  
  Dim   arr()   as   string    
  arr=Split(a,"。")  
   
  然后按一下回车,显示一个数组元素或者是组合即可.  
  Top

2 楼lxcc()回复于 2004-12-01 00:40:24 得分 0

Text1.Text=Text1.Text+"增加或者变化的字符串"Top

3 楼hylaeion(☆霖湘凝☆)回复于 2004-12-01 00:41:47 得分 0

1.那要是不想让别人修改text中的值,但又要显示颜色应该怎么办?  
      2.不一定用句号断句啊,只要是和句号在句子中作用一样的标点如,“!”、“?”等,都要断句的,这样的话还有其他办法吗?谢谢!Top

4 楼homezj(小吉)回复于 2004-12-01 02:08:15 得分 5

标点符号就那么多,我想不会超过20个吧,把所有你认为可用于断句的符号都检测一下就行了。方法很多,用Instr就不错。写个函数给你:  
   
  Function   FindBreak(start   as   long   ,word   As   string)   as   Long  
  dim   i   as   long,s   As   string  
  s=",;”。!~……)?"   '自己随便加上你想检测的断句符  
  for   i=1   to   len(s)  
  FindBreak=instr(start,word,mid(s,i,1))  
  if   FindBreak>0   then   exit   function  
  next  
  end   FunctionTop

5 楼of123()回复于 2004-12-01 08:26:15 得分 5

1  
  将   TextBox   放在一个   Enabled   =   false,BorderStyle   =   0   的   Frame   中。  
   
  2  
  strWords   =   "我是你的朋友。他也是你的朋友!"  
   
  Private   Sub   Text1_Click()  
  Dim   p   As   Integer,   n   As   Integer  
  p   =   InStr(Len(Text1)   +   1,   strWords,   "。")  
  n   =   InStr(Len(Text1)   +   1,   strWords,   "!")  
  If   p   >   n   Then   p   =   n  
  n   =   InStr(Len(Text1)   +   1,   strWords,   "?")  
  If   p   >   n   Then   p   =   n  
  n   =   InStr(Len(Text1)   +   1,   strWords,   "……")  
  If   p   >   n   Then   p   =   n   +   1  
  '......  
  Text1   =   left(strWords,   p)  
  End   Sub  
  Top

6 楼wumylove1234(毁于随)回复于 2004-12-01 09:00:51 得分 0

1.那要是不想让别人修改text中的值,但又要显示颜色应该怎么办?  
      2.不一定用句号断句啊,只要是和句号在句子中作用一样的标点如,“!”、“?”等,都要断句的,这样的话还有其他办法吗?谢谢!  
   
   
  不让修改,直接设置Text的Locked=true  
   
  标点的只能挨个判断了.Top

7 楼aiur2000(破愿立志别故里,荆棘南下思北风)回复于 2004-12-01 15:12:11 得分 5

1.Locked=true  
   
  2.  
  dim   a(10)   as   string    
  dim   i   as   integer  
  sub   form_load()  
  i=0  
  a(0)="我是你的朋友。"  
  a(1)="他也是你的朋友!"  
  ...  
  end   sub  
   
  sub   command1_click()  
          text1.text=text1.text   &   a(i)  
          i=i+1  
  end   subTop

8 楼happy_sea(开心海(数据读取中,请稍候......))回复于 2004-12-01 15:35:38 得分 5

1、不修改内容又要显示颜色,请将Text换成Label;  
  2、具体实现如下:  
  一个Text1用于存放原始字符串,一个Label1用于显示,一个Command,代码如下:  
  Private   Sub   Command1_Click()  
          Static   i   As   Integer  
          Do   While   i   <=   Len(Text1)  
                  i   =   i   +   1  
                  If   Mid(Text1,   i,   1)   =   ","   Or   Mid(Text1,   i,   1)   =   "。"   Or   _  
                          Mid(Text1,   i,   1)   =   "?"   Or   _  
                          Mid(Text1,   i,   1)   =   "!"   Or   _  
                          Mid(Text1,   i,   1)   =   ";"   Then   '此处假定以,。?!;进行分界  
                          Label1.Caption   =   Left(Text1,   i)  
                          Exit   Do  
                  End   If  
          Loop  
  End   Sub  
  Top

9 楼hylaeion(☆霖湘凝☆)回复于 2004-12-01 21:01:29 得分 0

谢谢大家给了这么多的方法~Top

10 楼libralibra(食食物者为俊杰: U don't try, U don't know)回复于 2004-12-01 21:13:20 得分 0

1、不修改内容又要显示颜色,请将Text换成Label;  
   
  ---------------严重同意这个观点,呵呵!Top

相关问题

  • 怎样使text中的字符显示为“******”
  • 如何将text中无法显示的字符剔除掉!
  • 字符显示的问题
  • 字符显示问题
  • 如何显示字符
  • 关于显示字符
  • 字符显示问题
  • 字符串显示问题
  • 英文字符显示
  • 字符串中带有空格,在jsp的text框里显示的时候会把空格后面的字符串都删掉

关键词

  • 修改
  • 属性
  • 断句
  • strwords
  • 字符串
  • 显示
  • findbreak
  • 句号
  • 标点
  • instr

得分解答快速导航

  • 帖主:hylaeion
  • homezj
  • of123
  • aiur2000
  • happy_sea

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo