随笔分类 -  Delphi-Editor1

摘要:第一步:定义全局变量用于状态改变时的对比 var Form1: TForm1; OldCI:HICON; 第二步:添加Timer组件,Interval设置随意一般50就可以了. 增加Memo组件用于记录状态改变 procedure TForm1.Timer1Timer(Sender: TObject 阅读全文
posted @ 2018-01-06 00:35 findumars 阅读(3258) 评论(0) 推荐(0) 编辑
摘要:各种文本编辑器的” 查找” 功能(Ctrl+F),大多采用 Boyer-Moore 算法。 下面,我根据 Moore 教授自己的例子来解释这种算法。。 假定字符串为”HERE IS A SIMPLE EXAMPLE”,搜索词为”EXAMPLE”。 首先,” 字符串” 与” 搜索词” 头部对齐,从尾部 阅读全文
posted @ 2017-09-27 17:53 findumars 阅读(395) 评论(0) 推荐(0) 编辑
摘要:也是看别人写的,但是不容易找到,就转发一篇delphi版本的 function GetLine(X, Y: integer): TPoint;var OldFont : HFont; Hand : THandle; TM : TTextMetric; Rect : TRect;begin Hand 阅读全文
posted @ 2017-07-24 20:00 findumars 阅读(911) 评论(0) 推荐(0) 编辑
摘要:procedure TForm1.RichEdit1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var vPoint: TPoint; begin if Button <>  阅读全文
posted @ 2017-01-24 22:30 findumars 阅读(1150) 评论(0) 推荐(0) 编辑
摘要:阅读目录 一、花絮 二、安装 三、使用 四、小结 阅读目录 一、花絮 二、安装 三、使用 四、小结 回到顶部 一、花絮 delphi自带的memo显示sql语句看的太累人了,今天决定美化一下。最起码要有“语法着色”、“显示行号”这2个功能。 意外发现了 SynEdit 控件。 下载地址: http: 阅读全文
posted @ 2017-01-19 17:10 findumars 阅读(1133) 评论(0) 推荐(0) 编辑
摘要:编辑框(Edit)控件实际上是一个简易的文本编辑器,用户可以在编辑框中输入可添加或插入文本。还有复制、粘贴、剪切、删除等编辑功能。 应用程序用CreateWindowEx创建编辑框控件时,可根据控件的用途在下表中选择部份常数来设定其风格属性(style)。 常数 说明 ES_MULTILINE 多行 阅读全文
posted @ 2016-04-17 17:20 findumars 阅读(1354) 评论(0) 推荐(0) 编辑
摘要:实在是厌烦了notepad的utf8模式了,于是决定修改之,方案如下: 使用任何支持hex模式的编辑器打开%SystemRoot%/system32/notepad.exe查找二进制串56 8D 45 FC 50 6A 03把最后的03改成00(本来的03是指bom的utf8编码长度,改成0就等于不 阅读全文
posted @ 2016-04-10 05:05 findumars 阅读(571) 评论(0) 推荐(0) 编辑
摘要:看着Edit的光标,是不是觉得了无生趣,想不想换个形状来玩玩,其实很简单,且听我道来。 Edit是Windows的标准控件,它是一个系统范围窗口类,所以任何应用程序都能创建它。其实Edit本质上也是一个窗口,MS实现了它却不开放源代码,只暴露出一些接口给我们操作。Edit的光标(Caret)没有意外 阅读全文
posted @ 2016-03-18 22:48 findumars 阅读(1875) 评论(0) 推荐(0) 编辑
摘要:使用delphi的消息机制可以方便操作后台,其中重要的就是sendmessage()函数。下面讲解一下这个函数 [delphi] view plain copy function SendMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: L 阅读全文
posted @ 2016-02-05 22:56 findumars 阅读(1865) 评论(0) 推荐(0) 编辑
摘要:这一篇将继续讨论在使用delphi进行普通应用程序开发的时候,WebBrowser的具体应用,主要是针对使用其进行HTML界面开发的,这也是一篇我在网上找到的资料,大家如要转载,请尊重原作者的知识产权,务必著名出处.什么应用需要HTML的界面HTML的界面有以下特点:图文混排,格式灵活,可以包含Fl... 阅读全文
posted @ 2015-12-10 21:58 findumars 阅读(3819) 评论(1) 推荐(0) 编辑
摘要:平时很少使用大文件的内存映射,碰巧遇到了这样的要求,所以把过程记录下来,当给各位一个引子吧,因为应用不算复杂,可能有考虑不到的地方,欢迎交流。对于一些小文件,用普通的文件流就可以很好的解决,可是对于超大文件,比如2G或者更多,文件流就不行了,所以要使用API的内存映射的相关方法,即使是内存映射,也不... 阅读全文
posted @ 2015-11-27 23:36 findumars 阅读(1172) 评论(0) 推荐(0) 编辑
摘要:uses RichEdit;function TextToRtf( // 将文本处理为RTF格式 mText: WideString // 输入文本): WideString; // 返回处理后的RTF文本var I: Integer;begin Result := StringReplace... 阅读全文
posted @ 2015-08-21 17:59 findumars 阅读(707) 评论(0) 推荐(0) 编辑
摘要:例如对windows发消息让文本选中。 SendMessage(Text1.hwnd,EM_GETSEL,0,-1 );EC_LEFTMARGIN(&H1) EC_USEFONTINF //设置左边距时使用EC_RIGHTMARGIN EC_USEFONTINF //设置右边距时使用EC_USEFO... 阅读全文
posted @ 2015-08-21 17:24 findumars 阅读(7469) 评论(0) 推荐(0) 编辑
摘要:Canvas.TextOut真是好用,Printer也实在好用:procedure PrintTStrings(Lst : TStrings) ;var I, Line : Integer;begin I := 0; Line := 0 ; Printer.BeginDoc ; // T... 阅读全文
posted @ 2014-12-13 08:49 findumars 阅读(464) 评论(0) 推荐(0) 编辑
摘要:平时很少使用大文件的内存映射,碰巧遇到了这样的要求,所以把过程记录下来,当给各位一个引子吧,因为应用不算复杂,可能有考虑不到的地方,欢迎交流。对于一些小文件,用普通的文件流就可以很好的解决,可是对于超大文件,比如2G或者更多,文件流就不行了,所以要使用API的内存映射的相关方法,即使是内存映射,也不... 阅读全文
posted @ 2014-09-18 21:53 findumars 阅读(375) 评论(0) 推荐(0) 编辑
摘要:这里只针对Edit的内容做一个简单的undo,redo功能;原理就是,将新增字符和相关信息添加到undo列表,在undo动作时,取记录信息,并在edit中删除新增的字符,然后将此动作添加到redo列表,以便恢复。本程序只对文本框文字的顺序增加做了处理,对于任意位置的删除,复制粘贴等没有进行处理,大家... 阅读全文
posted @ 2014-09-18 21:27 findumars 阅读(877) 评论(0) 推荐(0) 编辑
摘要:我们知道在文本框等可以接收输入的组件中,我们可以看到闪烁的光标,并可以输入文字,如果我们在,比如窗体上时,因为不支持输入,也无法显示闪烁的光标,那我们 有办法做自己的输入吗?当然可以,下面我们演示在Form上来输入文字。用到的API函数如下GetTextMetrics:获取程序当前的字体信息,存放到... 阅读全文
posted @ 2014-08-06 22:04 findumars 阅读(1008) 评论(0) 推荐(0) 编辑
摘要:unit Unit1;interfaceuses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, V... 阅读全文
posted @ 2013-12-27 10:02 findumars 阅读(466) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示