Scintilla Markers & Margins

  在以下的描述中,消息被描述为带有0个,1个或2个参数的函数调用.这两个参数就是windows消息处理函数中的wParam和lParam,所有的消息都需要两个参数而不管Scintilla是否使用它们,强烈推荐你对不使用的参数都设置成0.

文本获取:

SCI_GETTEXT(int length, char *text)

  从文档开始位置返回length-1个字节,放存放到text指定的缓冲区中,并在其后添加字符串结束符.如果要获得整个文档的内容,可以先通过SCI_GETLENGTH先来获取文档的字节长度,然后再通过SCI_GETTEXT来取得其内容.如果text参数为空,将返回需要分配的缓冲区长度.

SCI_SETTEXT(<unused>, const char *text)
  设置文档内容.

 SCI_GETLINE(int line, char *text)

  返回指定行的内容(行号从0开始),注意Scintilla并不会在返回内容的末尾自动添加字符串结束符,所以可能需要你来手动加上.
SCI_LINELENGTH(int line)

  返回指定行的长度.包括任何的行结束符,如果想得到不包含行结束符的行长度,可能通过SCI_GETLINEENDPOSITION(line) - SCI_POSITIONFROMLINE(line)来得到.

SCI_REPLACESEL(<unused>, const char *text)

  替换当前选中项.

SCI_SETREADONLY(bool readOnly)

  设置文档是否为只读
SCI_GETREADONLY

  查看文档是否为只读.

 

Markers

SCI_MARKERDEFINE(int markerNumber, int markerSymbols)

  将指定编号的标记和一个标记符号或者一个ASCII字符关联起来。markerNumber是标记的编号(0~31),markerSymbols是标记的符号类型,常用的符号标记类型有:SC_MARK_CYCLE,SC_MARK_ROUNDRECT,SC_MARK_ARROW等等。

SC_MARK_BACKGROUND

  改变行的背景色.

SC_MARK_FULLRECT

  改变空白区(Margin)的背景色.

SCI_MARKERSETFORE(int markerNumber, int colour)

  设置Marker的前景色
SCI_MARKERSETBACK(int markerNumber, int colour)

  设置Marker的背景色.

SCI_MARKERADD(int line, int markerNumber)

  给指定行添加一个标记.返回一个指向标记的句柄.该句柄可以在SCI_MARKERDELETEHANDLESCI_MARKERLINEFROMHANDLE 中使用.

SCI_MARKERDELETE(int line, int markerNumber)

  删除指定行的指定标记.

 

Margins:

  在文本显示区域的左侧最多有五个Margin,每个Margin都可以用来显示行号或者符号,这可以通过SCI_SETMARGINTYPEN来进行设置.

  Margins 被编号为从0到4,使用任何在这个范围之外的编号都将无效.默认情况下,Margin 0被用来显示行号,但其宽度被指定为0,所以它默认情况下是隐藏的.Margin 1用来显示非折叠的符号,默认宽度为16个像素值,因而是可见的.Margin 2用来显示折叠符号,默认情况下宽度也是0(隐藏).

 

转载于:https://www.cnblogs.com/cmleung/archive/2009/10/31/1593511.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值