一、花絮

delphi自带的memo显示sql语句看的太累人了,今天决定美化一下。最起码要有“语法着色”、“显示行号”这2个功能。

意外发现了 SynEdit 控件。

SynEdit是一个免费的文字编辑器,支持37种程序语言语法高亮度显示,可以一次编辑多个文件

SynEdit 支持语法高亮、word-wrap、代码自动完成、模版组件、导出到 html 等格式的功能。

SynEdit 是一个纯 VCL/CLX 控件,无须任何其他运行库支持,著名的 HeidiSQL 数据库管理工具就是使用该控件开发的SQL编辑器。[] 

下载地址: http://sourceforge.net/projects/synedit/

打开下载的文件后,发现最后更新时间是2013年。在delphi xe7下面安装频频报错。(因为utf-8编码的问题),修改很多处都还是报错。

并不想再源码上纠结太多。于是找到了一个非常完美的版本 http://download.csdn.net/detail/vowstar/8047455

感谢提供者: vowstar

考虑到csdn下载文件比较麻烦。这里我直接传到园子里面,方便下载

http://files.cnblogs.com/files/lovelp/SynEdit-DelphiXE7.rar

二、安装

1、用delphi xe7打开 SynEdit-DelphiXE7\Packages\DelphiXE7.groupproj

然后,编译、install (和其他控件安装是一样的步骤,比如fastreport)

2、添加 SynEdit-DelphiXE7\Packages\Win32\Release 到delphi的32位环境变量library path,

添加 SynEdit-DelphiXE7\Packages\Win64\Release 到delphi的64位环境变量的library path

3、安装成功后,控件区域会显示

三、使用

1、添加2个控件到窗体:

TSynMemo和TSynSQLSyn 两个控件

2、关联TSynMemo的Highlighter属性为TSynSQLSyn控件

3、设置行号  synm1.Gutter.ShowLineNumbers := true;

4、设置sql语法高亮的颜色

  

synsqlsyn2.CommentAttri.Foreground := clGreen;
synsqlsyn2.DelimitedIdentifierAttri.Foreground :=clBlue;
synsqlsyn2.FunctionAttri.Foreground :=clFuchsia;
synsqlsyn2.KeyAttri.Foreground := clBlue;
synsqlsyn2.StringAttri.Foreground:= clRed;

效果图

四、小结

  1、合适的时候选择合适的工具。(按照以前的性格肯定会用VC来死磕)

  2、对的时间做对的事情(编译不通过的时候,继续折腾可能会消耗更多的时间,从而本末倒置。因为重点是使用控件而不是编译通过)

  3、把消耗时间解决的问题整理出来,避免以后再消耗时间。

SynEdit(Delphi XE7)的安装和基本使用的更多相关文章

  1. Delphi XE7下如何创建一个Android模拟器调试

    利用Delphi XE7我们可以进行多种设备程序的开发,尤其是移动开发应用程序得到不断地加强.在实际的Android移动程序开发中,如果我们直接用android真机直接调试是非常不错.一是速度快,二是 ...

  2. Delphi xe7组件和控件的安装方法

    暂时我所遇到的所有控件安装方法大体与下面两种相同. 若有不同大家提出来,一起想办法解决. .dproj格式的组件安装方法: raise组件 安装详细步骤如下: 一.设置搜索路径1. 将本包中的文件连同 ...

  3. RemObjects SDK Source For Delphi XE7

    原文:http://blog.csdn.net/tht2009/article/details/39545545 1.目前官网最新版本是RemObjects SDK for Delphi and al ...

  4. Delphi XE7试用记录1

    Delphi XE7试用记录1 在网上看到XE7的一些新特征,觉得完整Unicode支持.扩展Pascal语法.更多功能的库都很吸引人,决定试试XE7. XE7官方安装程序很大,因此选择了lite版, ...

  5. Delphi XE7的安卓程序如何调用JAVA的JAR,使用JAVA的类?

    本文使用工具和全部源码下载: http://download.csdn.net/detail/sunylat/8190765 为什么我们要在Delphi XE7的安卓程序调用JAVA的JAR,使用JA ...

  6. Delphi XE7调用Java Class,JAR

    Delphi XE5,XE6需要用户手工编译并将Classes.Dex加入到包中,不过Delphi XE7可以省掉这些工作了. 如何在XE7中调用Java,具体步骤如下: 1.将jar文件添加到XE7 ...

  7. [转载]: delphi中XLSReadWrite控件的使用(2)---delphi XE下安装

    一.下载 官方下载网址: http://www.axolot.com/components/download.htm 从这里可以下载到从Delphi5到DelphiXE全部支持的版本. 二.软件安装 ...

  8. delphi XE7 中的消息

    在delphi XE7的程序开发中,消息机制保证进程间的通信. 在程序中,消息来自: 1)系统: 通知你的程序用户输入,涂画以及其他的系统范围的事件: 2)你的程序:不同的程序部分之间的通信信息.   ...

  9. 关于delphi XE7中的动态数组和并行编程(第一部分)

    本文引自:http://www.danieleteti.it/category/embarcadero/delphi-xe7-embarcadero/ 并行编程库是delphi XE7中引进的最受期待 ...

随机推荐

  1. 使用Reveal来查看别人的APP界面+白苹果不刷机解决方式

    Reveal这个强大的界面调试工具.能够实时查看.改动view的属性,大体上实现了iOS程序猿梦寐以求的功能.比方,有时候我们加入了一个view,可是那个view死活不显示出来,这时候祭出Reveal ...

  2. C#多线程学习(六) 互斥对象

    如何控制好多个线程相互之间的联系,不产生冲突和重复,这需要用到互斥对象,即:System.Threading 命名空间中的 Mutex 类. 我们可以把Mutex看作一个出租车,乘客看作线程.乘客首先 ...

  3. mongodb 配置单实例与双实例

    环境: centos6.5 192.168.16.70 配置单实例mongodb:[root@www soft]# tar xf mongodb-linux-x86_64-rhel62-3.2.7.t ...

  4. 【BZOJ1499】[NOI2005]瑰丽华尔兹 单调队列+DP

    [BZOJ1499][NOI2005]瑰丽华尔兹 Description 你跳过华尔兹吗?当音乐响起,当你随着旋律滑动舞步,是不是有一种漫步仙境的惬意?众所周知,跳华尔兹时,最重要的是有好的音乐.但是 ...

  5. 【BZOJ3956】Count 主席树+单调栈

    [BZOJ3956]Count Description Input Output Sample Input 3 2 0 2 1 2 1 1 1 3 Sample Output 0 3 HINT M,N ...

  6. vscode webstrom 配置 eslint 使用 airbnb 规范

    1.安装eslint npm eslint-plugin-react eslint-plugin-import babel-eslint -g 2.全局配置文件,放到c:/user/***/ { &q ...

  7. 响应式布局【3】 --- bootstrap

    本片文章主要讲解Bootstrap中如何实现响应式布局的. 参考资料&内容来源: https://code.ziqiangxuetang.com/bootstrap/bootstrap-gri ...

  8. 使用maven3 创建自定义的archetype

    创建自己的archetype一般有两种方式,比较简单的就是create from project 1.首先使用eclipse创建一个新的maven project,然后把配置好的一些公用的东西放到相应 ...

  9. Database: key

    super-key: Any key that has more columns than necessary to uniquely identify each row in the table i ...

  10. Android Weekly Notes Issue #276

    September 24th, 2017 Android Weekly Issue #276 本期内容包括LifeCycle与Architecture的相关文章,以及新的JSON解析库Moshi的介绍 ...