TEXT
文本框中选中的字体
变成想要的颜色
尽量要用到:SELTEXT,COMMONDIALOG,FORCOLOR。有其他方法也可以。
满意答案┢┦aΡpy纯7级2008-10-10文本框只能设置全部字体的颜色,无法单独改变部分字体的颜色,改用RichTextBox吧!方法如下:右击工具箱选“部件”,然后选中“Microsoft
Rich
TextBox
Control60”,在窗体上画一个RichTextBox控件,然后在代码中通过SelColor属性就可以改变选中的字体的颜色。如果是部分变色建议用RichTextBox控件下面是一段简单的部分变色的代码:private void button1_Click(object sender, EventArgs e)
{ int start = thisrichTextBox1SelectionStart; // 记录变颜色之前的选中的起始位置
int length = thisrichTextBox1SelectionLength; // 记录变颜色之前的选中的长度
thisrichTextBox1Select(0, 3); // 选中要变颜色的 部分文本
thisrichTextBox1SelectionColor = ColorBlue; // 设置要变的颜色 thisrichTextBox1Select(start, length); // 恢复变色前的选中状态
thisrichTextBox1Focus(); // 重新获取焦点(这个根据不同的需求可以去掉)
}因为enabled属性为false时
字体总是灰色的,不管你之前是什么颜色
但是你用enabled=false
应该是
不希望用户 *** 作文本框吧,建议你不要设置enabled属性,即保持enabled属性的值为true,设置其Locked属性,将
locked属性置为true,
然后设置字体颜色是可以实现的
text1forecolor=vbred因为enabled属性为false时
字体总是灰色的,不管你之前是什么颜色
但是你用enabled=false
应该是
不希望用户 *** 作文本框吧,建议你不要设置enabled属性,即保持enabled属性的值为true,设置其locked属性,将
locked属性置为true,
然后设置字体颜色是可以实现的
text1forecolor=vbred我也不想看上面楼主说的意思了。
因我机器没有VB,只能说说思路了。你已经说了是用richtextbox,具体思路如下:
1,这个控件分别有有设置颜色,字体的属性。
2,因为你可能是想每行的字体,颜色都不一样。这就要对文本框的位进行计算,从0位到行的最后一位进行选中,用属性设置。 依次计算就可以达到目标。
3,上面的方法是一种非常死板的方法。如果你想好一点,就采取API取行实现。那样子方法比较复杂。但是对于程序的性能可能相对较好。textbox的属性ReadOnly设置为true只读后,只更改字体颜色并不起作用。
解决办法是,连同背景色一起设置即可。
效果如下:
参考原文链接:
C# textbox设定为只读后如何改变文本字体颜色tb是你前台的TextBox 或者是后台New出来的TextBox
tbFontSize = 12;//字体大小
tbForeColor = ColorAliceBlue;//字体颜色
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)