c# richtextbox的 字型格式顏色等等
2023年12月25日 星期二 17:01
【關於字型格式】
設定的是第乙個字元的顏色,這時richtextbox的rtf中記錄下位置0的顏色,重置text時,在rtf中的位置從位置0開始,因此顏色還是color.red,第三次也應該同樣如此 richtextbox1.text = "123"; richtextbox1.select(0, 1); richtextbox1.selectioncolor = color.red; richtextbox1.clear();//清除文字,包括樣式 //或richtextbox1.text=""; richtextbox1.text = "abc"; richtextbox1.text = "efg"; 這樣重置後的文字顏色就會是黑色.
【關鍵字著色】
public
partial
class
richtextbox : form
...private
void
tsql_textchanged(
object
sender, eventargs e) //文字框改變事件
for(
inti =0
; i
<
keystr.length; i
++)this
.getbunch(keystr[i],
this
.tsql.text);
this
.tsql.select(index,
0); //返回修改的位置
this
.tsql.selectioncolor
=color.black;
public
intgetbunch(
string
p, string
s) //給關鍵字上色
if(j
==p.length)
return
cnt;}
【繪製顏色提議】
最好的做法是繼承richtextbox,過載新類的paint方法。 並且在設定selectionlength的時候,禁止控制項的重繪過程,這樣才不會出現被語法高亮的文字有乙個突然選中的過程。 以下2個方法將會對你解決這一問題有很大的幫助. [dllimport("user32")] private static extern int sendmessage(intptr hwnd, int wmsg, int wparam, intptr lparam); private const int wm_setredraw = 0xb; //停止控制項的重繪 private void beginpaint() //允許控制項重繪. private void endpaint()
linux下設定vim語法著色
新建乙個這樣的檔案 vimrc,這個檔案是使用者自己的vim配置檔案。cd vi vimrc按a進入編輯模式,輸入一下配置資訊,配置資訊的作用在後面的注釋有說明 set hlsearch 高亮度反白 set backspace 2 可隨時用退格鍵刪除 set autoindent 自動縮排 set ...
解決fedora64下vim不能語法著色問題
初始狀態是vim開啟任何檔案都沒有高亮跡象,接不是彩色,也沒有下劃線,好了,看怎麼一步步解決的。1 vim vimrc 竟然沒有這個檔案,建立之 touch vim vimrc 新增syntax on 2 檢查語法外掛程式是否都有 rpm qa grep vim 卻乙個外掛程式,安裝上 yum in...
整理 如何做乙個語法著色控制項
很多ide或者開發工具中都有語法著色的功能,這是如何實現的呢?筆者試著用c 做了乙個sample,基本上實現此功能。本文一半是原創,一半是參考國外的論壇 語法著色器,實際上只做了兩件事情 接受使用者輸入 以及 改變關鍵字字型屬性 c 自帶的控制項中能夠滿足需求的首推 richtextbox 筆者在網...