huidong

只有枯燥的练习能收获极致的熟练,只有机械的重复才有资格拥抱唯美的创造。

支持鼠标交互的多行文本框(含语法高亮) 银牌收录

之前一直想自绘一个输入框,终于在国庆最后一天把它写了,一写完就赶去学校了……

今天总算回来,和大家分享一下。

这个输入框相当简陋,其实只是为了用于实现我的一些想法。

支持:

  • 多行输入
  • 方向键移动光标
  • Shift 键选择文本
  • 鼠标点击和拖动
  • 双击选取单词
  • 部分 C 语言关键字高亮

希望可以让感兴趣的同学从中受到一点启发,因为我之前觉得自己做一个代码编辑框一定很酷。

看起来简简单单,可是代码却不少(我以为不需要那么多)。为了保持代码的整洁性,我只能将这段本该简短的代码拆成三个文件,所以这里也不便贴代码出来,只能提供一个压缩包了:

SimpleEditor

如果你觉得还不错,可以把它继续完善,一起分享~

评论 (13) -

  • vs2010报了200个错
    • 这个项目是用 VS2022 写的,不能用低版本 VS 编译。除非你自己用 VS2010 创建一个项目,再把源码加入到项目中编译。
  • 可惜不能快捷键复制粘贴
    • 这只是个简单的编辑框示例,实用功能需要自己进一步开发。
  • 我猜是不是有人心经开始动工了,把编译器和这个打包结合一下,这个项目可以内加 easyx 绘图库,一个特别简单到极致的IDE。
  • 我也这么觉得,加几行代码,配上 mingw,就是个简单的编译器了🤣
  • 如果能输入汉字和自动补全括号就好了
    • 可以输入汉字。这只是个示例,所以没做那么多功能
      • 我的电脑上不能输入汉字
        • 我测试确实可以呀。只是输入法的框框的显示位置可能不对,或许会显示到屏幕左上角。我录制了一个 gif,请看:https://s2.loli.net/2022/10/23/3KfPRGstEWmQL8a.gif
          • 应该是我电脑或者编辑器原因
  • 酷,可以自己写编译器了

添加评论