在以下的描述中,消息被描述为带有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

Scintilla Markers Margins相关推荐

  1. notepad++及Scintilla

    notepad++是一个不错的源代码编辑的软件, 其内部使用了 Scintilla 作为UI的实现, notepad++源代码可在在http://notepad-plus.sourceforge.ne ...

  2. Error in plot.new() : figure margins too large

    Error in plot.new() : figure margins too large 目录 Error in plot.new() : figure margins too large #问题 ...

  3. R语言可视化包ggplot2包改变边距(margin)实战(Modify the Margins)

    R语言可视化ggplot2包改变边距(margin)实战(Modify the Margins) 目录 R语言可视化ggplot2包改变边距(margin)实战(Modify the Margins)

  4. Error in plot.new(): figure margins too large

    Error in plot.new(): figure margins too large 目录 Error in plot.new(): figure margins too large 问题: 解 ...

  5. Global variables vs. Host variables vs. Parameter markers

    Global variables are defined using the CREATE VARIABLE statement. Host variables are defined by stat ...

  6. constrain to margins

    如果你点了constrain to margins,左右会有8个点的空挡,而是从8个点后开始计算约束,而没有点时,已屏幕的0点开始计算. 转载于:https://www.cnblogs.com/Sim ...

  7. mfc c语言 编辑器,语法高亮编辑控件Scintilla在MFC中的简单使用

    项目中要使用代码编辑器,搜索之后,发现了强大的编辑器控件Scintilla. 1.简介 Scintilla是一款开源的语法高亮编辑器控件,官方网站:http://www.scintilla.org/. ...

  8. Multiple markers at this line @Override的解决方法

    转自:http://www.cnblogs.com/zhujiabin/p/4844461.html Multiple markers at this line - implements androi ...

  9. Multiple markers at this line

    当你得到一份源码,用import的方式导入工程时发现,里面有很多错.而且是如下提示时,可以有两种方法进行改正. Multiple markers at this line - The type jav ...

  10. matplotlib markers的类型

    https://matplotlib.org/api/markers_api.html matplotlib markers 所有可能的markers定义如下: marker symbol descr ...

最新文章

  1. SQL Server存储过程输入参数使用表值
  2. wowpve服务器优势,PVE服务器法师对本职业的一点看法
  3. 从Java到Go面向对象--类的定义和实例化对象
  4. Gitlab 生成 swagger 文档
  5. php 使用redis
  6. [云炬ThinkPython阅读笔记]2.2 变量名
  7. 【枭·音频】声随意动——浅谈《暗影火炬城》声音设计
  8. 一个磁性窗体VCL组件的具体实现
  9. C# XXX.XmlSerializers”的程序集未能加载到..
  10. Javascript特效:字体背景跑马灯
  11. 基于Windows 7环境的WAPI无线网络应用层控制实现
  12. 一文学懂risc-v汇编操作
  13. 伙伴们,小毛祝你们新的一年神马都给力!!!
  14. Modern Family 开篇语
  15. 计算机毕业设计Java影片租赁系统(系统+程序+mysql数据库+Lw文档)
  16. 解决Win2016提示“发生身份验证错误 要求的函数不受支持”的问题
  17. 天大《模拟电子技术基础》大作业期末考核
  18. Git基本命令及缩写
  19. vue屏幕长宽自适应
  20. win7 32位装mysql_2017-11-16 Win7 32位下安装Mysql

热门文章

  1. 75道经典逻辑思维题及答案
  2. python求绝对值_python绝对值怎么计算
  3. 网易云音乐刷了我的过去...
  4. matlab怎样定义全局变量,Matlab如何定义公共变量
  5. 计算机电源(atx电源),电脑ATX电源各级电压标准
  6. oracle 有if语句吗,oracle的if语句
  7. 电子智能化专包有哪些要求和标准
  8. 基于R语言地理加权回归、主成分分析、判别分析等空间异质性数据分析
  9. h5打开麦克风权限录音_HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能...
  10. arcgis 只能查看指定行政区域_用ArcGIS来实现坐标转换操作,以及相关的使用心得...