1richtextbox中的selectionfont问题。。。无法设定文本插入点字体

奇奇爱上猫 2015-04-09 02:20:44
做了一个richtextbox的文本编辑框,一开始改变字体某一的话把原来的字号等文本格式全都给改变了
于是我写了一个逐字改变格式的方法。
但是改了之后是可以逐个改变字体格式,但是插入点之后的格式无法更改了。
...全文
249 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
EdsionWang 2015-04-09
  • 打赏
  • 举报
回复
你要改选中的字体,你for循环的i不能从0开始,得从selectionstart开始。至于要改光标之后的,你再用总text的长度减当前位置计算一下。
奇奇爱上猫 2015-04-09
  • 打赏
  • 举报
回复
引用 2 楼 andywangguanxi 的回复:
没明白你到底要改哪部分的样式。从你的代码来看,修改的就是从头到你(你选中的长度 + 你选中的开始位置)。你可以查看myPos和myLength的值,就知道改的是哪部分的文本的了
而且我也看了我这个程序的其他代码,但是能对selectionfont产生影响的只有这个方法。
奇奇爱上猫 2015-04-09
  • 打赏
  • 举报
回复
引用 2 楼 andywangguanxi 的回复:
没明白你到底要改哪部分的样式。从你的代码来看,修改的就是从头到你(你选中的长度 + 你选中的开始位置)。你可以查看myPos和myLength的值,就知道改的是哪部分的文本的了
这段代码只是改变字体 this.richTextBox1.SelectionFont = newfont; 这句话有两个功能应该,第一个是改变当前选中字体,第二个设置插入点的字体(也就是光标的位置之后的字体) 现在的情况是第二个功能没了
奇奇爱上猫 2015-04-09
  • 打赏
  • 举报
回复
引用 2 楼 andywangguanxi 的回复:
没明白你到底要改哪部分的样式。从你的代码来看,修改的就是从头到你(你选中的长度 + 你选中的开始位置)。你可以查看myPos和myLength的值,就知道改的是哪部分的文本的了
是改的当前选中的文本格式。 因为 .selectionfont=xx;获取当前选中文本格式,还有一个是设置当前插入点字体格式。 现在问题是,无法改变当前插入点字体了。
EdsionWang 2015-04-09
  • 打赏
  • 举报
回复
没明白你到底要改哪部分的样式。从你的代码来看,修改的就是从头到你(你选中的长度 + 你选中的开始位置)。你可以查看myPos和myLength的值,就知道改的是哪部分的文本的了
奇奇爱上猫 2015-04-09
  • 打赏
  • 举报
回复
丿upupupupupupupupupupup

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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