^_^ TY 2019-04-27 14:19 采纳率: 0%
浏览 388

scintilla处理缩进问题

scintilla嵌入MFC中,编写一个代码编辑器,现在要求没有括号和大括号,根据行首关键字是否为if、else、while来判断缩进。

现在已得到当前行(行首为if关键字)缩进量,计算出下一行缩进量,设置缩进量以后应该要将插入符放到行缩进的后面,怎么处理呢?

代码如下:

if ((0 == strArray.GetAt(0).Compare(_T("if"))) || (0 == strArray.GetAt(0).Compare(_T("else")) || (0 == strArray.GetAt(0).Compare(_T("while")))))
            {
                nNextIndent = nIndent + 2;//计算下一行缩进量
            }
            else
            {
                nNextIndent = nIndent;//计算下一行缩进量
            }
            m_wndScintilla.SendMessage(SCI_SETLINEINDENTATION, nLine + 1, nNextIndent);//设置下一行缩进
            int nPos2 = m_wndScintilla.SendMessage(SCI_GETLINEINDENTPOSITION, nLine + 1, 0);//下一行缩进结束位置

            //TODO:设置光标位置在下一行缩进结束位置
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 ads仿真结果在圆图上是怎么读数的
    • ¥20 Cotex M3的调试和程序执行方式是什么样的?
    • ¥20 java项目连接sqlserver时报ssl相关错误
    • ¥15 一道python难题3
    • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
    • ¥15 牛顿斯科特系数表表示
    • ¥15 arduino 步进电机
    • ¥20 程序进入HardFault_Handler
    • ¥15 oracle集群安装出bug
    • ¥15 关于#python#的问题:自动化测试