2012年6月28日
摘要: 发现cxMaskEdit的正则表达式很不错,于是将其剥离出来,以便可以移植到其它控件上,两个单元cxMaskEdit和cxRegExpr(代码贴在下面),这里给出简单的调用方法 :1、procedure TForm1.FormCreate(Sender: TObject);begin FRegExpr := TcxRegExpr.Create; re := TcxMaskEditRegExprMode.Create(Edit1); re.Compile('(Y | y)(es|ES)? | (N | n)o?');end;2、procedure TForm1.Edit1Chan 阅读全文
posted @ 2012-06-28 15:04 stwo 阅读(5099) 评论(0) 推荐(0) 编辑
  2011年9月9日
摘要: 1、启动服务器端 ipwIPDaemon1.LocalPort := 'Localhost'; ipwIPDaemon1.LocalHost := 1981; ipwIPDaemon1.Listening := TRUE;2、连接服务器 ipwIPPort1.RemoteHost := 'Localhost'; ipwIPPort1.RemotePort := 1981; ipwIPPort1.Connected := TRUE;3、客户端向服务器发消息 ipwIPPort1.DataToSend := 'Hi~~!!!';4、服务端向客户端发消 阅读全文
posted @ 2011-09-09 13:56 stwo 阅读(1916) 评论(0) 推荐(0) 编辑
  2011年9月7日
摘要: 客户端IdTCPClient向服务端IdTCPServer1发送消息1、连接 with IdTCPServer1 do begin Bindings.Clear; Bindings.Add.IP := '127.0.0.1'; Bindings.Add.Port := 1982; Active := True; end; with IdTCPClient1 do begin Host := '127.0.0.1'; Port := 1982; Connect; end;2、服务端向客户端发消息procedure TForm1.BtnSendClic... 阅读全文
posted @ 2011-09-07 12:22 stwo 阅读(5125) 评论(0) 推荐(0) 编辑
  2011年9月1日
摘要: 在上一篇用正则表达式获取指定的字符串中,只是简单处理了下符合要求的字符串,假如有多个符合要求的自私办呢,本来懒得弄,后来还是有一网友也问了同一个问题,如是试了一下,用递归function GetNextMatch(AValue, APattern: string): string;var i: Integer; Regex: TRegex; s: string;begin Regex := TRegex.Create(APattern, [roIgnoreCase]); for i := 0 to Regex.Matches(AValue).Count -1 do begin Resul... 阅读全文
posted @ 2011-09-01 15:12 stwo 阅读(2569) 评论(0) 推荐(0) 编辑
摘要: 在Oracle数据库中,字符类型有Char、VarChar和VarChar2三种类型,但不大清楚各自区别在哪儿,平时基本上就是用VarChar,只知道它能省空间,国为在最大限度内,有多少存多少。下面说下各自区别。Char:其长度是固定的,长度为2000VarChar:工业标准类型,可变长的数据类型,最大长度为2000VarChar2:Oracle特有的类型,可变长的数据类型,最大长度为4000在空间上,Char要比VarChar和VarChar2耗费空间,因为不管存多少内容,它的长度都为2000,而VarChar和VarChar2则因长度可变,会节省更多的空间在效率上,Char要比VarCha 阅读全文
posted @ 2011-09-01 09:55 stwo 阅读(5736) 评论(0) 推荐(0) 编辑
  2011年8月29日
摘要: 有一网友问了一个有关正则的问题,即取出以单词begin开头和单词end结尾之间的字符串,很感兴趣便动手试下,可试了很多次效果不是太理想,今天简单的实现了,代码如下:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, RegularExpressions, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Memo1: TM... 阅读全文
posted @ 2011-08-29 15:28 stwo 阅读(20425) 评论(0) 推荐(0) 编辑
  2011年8月22日
摘要: 在进行数据库编程时我们总会遇到时间格式问题,往往让人头痛不已,其实DELPHI有一个很好的解决方如下:procedure FormatComputerDateTime;beginDateSeparator := '-';ShortDateFormat := 'yyyy-m-d';LongDateFormat := 'YYYY-M-D HH:MM:SS';end;这里要注意FormatComputerDateTime是自定义函数,在其实现中我们可以设置我们想要的时间格式,完成后,在模块初始化的时候执行就可以了。 阅读全文
posted @ 2011-08-22 09:52 stwo 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 1、检索指定列中的内容【cxGridDBTableView,cxGridDBColumn】A、设置cxGridDBTableView.OptionsBehavior.IncSearch := True;B、设置cxGridDBTableView.OptionsBehavior.IncSearchItem :=cxGridDBColumn;C、设置cxGridDBColumn.Options.IncSearch := True;按以上步骤完成后就可以在cxGrirdDBTableView中可检索对应cxGridDBColumn列中的数据,当然以上是些简单的属性设置,在实际应用场景中我们可能要求更 阅读全文
posted @ 2011-08-22 09:46 stwo 阅读(636) 评论(0) 推荐(0) 编辑
  2011年8月19日
摘要: 1、从官网上下载Firebird数据库安装2、将Firebird数据库安装文件夹中的fbclient.dll、fbrmclib.dll、fbrmclib.dll、fbrmclib.dll、fbrmclib.dll、fbrmclib.dll 这几个DLL复制到C:\WINDOWS\system32文件夹中,这里我们要注意,在C:\WINDOWS\system32不能有以上 DLL中的不同版本,就是说要保证上面所有的DLL文件版本要一至,3、从网上下载Jaybird,将其解压到指定文件夹后,在工程中引用里面的文件4、代码 1 String Driver = "org.firebirdsq 阅读全文
posted @ 2011-08-19 15:13 stwo 阅读(4253) 评论(0) 推荐(0) 编辑
  2011年8月2日
摘要: 做了一个DEMO,用FireBird数据库,想给别人看,但又不想安装数据库,用嵌入式版FireBird数据库是个好方法,在网上查了N多都说带一个DLL就好了,试后不成功,后来干脆把相关的10多个DLL全放在主程序EXE同级文件夹下,结果还是不行,最后在网上找到一老兄的方法:可以从FireBird的Bin文件夹下找到:fbembed.dllicudt30.dllicuin30.dllicuuc30.dll把这几个文件拷贝到主程序EXE同级的文件夹下,然后把fbembed.dll 改名为gds32.dll程序就可以正常运行了关键是把fbembed.dll改名为gds32.dll,但是不知道为什么我 阅读全文
posted @ 2011-08-02 15:28 stwo 阅读(3749) 评论(2) 推荐(1) 编辑