文章分类 - Delphi
摘要:日志的输出有助于程序的调试和问题的查找。在Java里面有log4J, 虽然Delphi里面有也有log4D,和showMessage,始终觉得不是蛮方便。这几天在写socket程序,顺手就写了一个日志记录和查看的工具Form1为测试程序,日志显示器为查看程序分成两部分1,日志查看(logViewer.exe),是一个socket的服务,用来接收日志,和显示日志。2,日志记录(logClient.dll),提供日志记录功能,负责发送日志信息。pas文件说明 logClientWrapper.pas包装了logClient.dll的功能。 uILogService.pas, 提供了logClien
阅读全文
摘要:先来段代码typeMyString=AnsiString;PMyChar=PAnsiChar;procedureTForm2.Button2Click(Sender:TObject);varp:PMyChar;s,s2:MyString;beginself.Caption:='frmTest';//7位的字符串p:=GetCaption;s2:=p;//这是时候s2为frmTesShowMessage(s2); //*****显示出来为frmTesend;functionTForm2.GetCaption:PMyChar;vars1,s2:MyString;begins2:=M
阅读全文
摘要:一个软件的成功除了跟软件的灵活性和功能有很大关系之外,其实操作的便利性也占了很大一部分,特别是想抢占其他软件的领域的时候。实施的成功与否跟操作者有着很大的关系,要直接用户的认可,在数据的输入方面就要花费很大的功夫了。 公司的项目都是用DBGridEH做从表数据的输入,当一列设置为ReadOnly后,在Enter的时候自动的会跳过这个单元格。 由于我的框架里面都使用的是cxGrid做输入,cxGrid这样做就不行,也许大家会想到设置column的Focusing属性。这样做是可以,但有个很不爽的问题(可能大家认为不是什么问题)连复制都行,无法获得焦点。经过跟踪源码。对代码做了一些改动。主要是修改
阅读全文
摘要:浪费了我将近三个小时的查错,郁闷. 以前增加TmfEditFormCmptMgr.OnDstMainSetFieldData事件,但是在Destroy的时候忘记了还原事件.导致Cds.OnSetFieldData为无效内存块. 以后写程序时一定要紧记,内存块问题.不要使还存在的对象指象一块无效的内存.
阅读全文
摘要:procedure CreateVarArrayFromDataset(var varResultSet: OleVariant; ADataset : TDataset); var m : Integer; nRecords, nColumns, nCurRec : Integer; begin nRecords...
阅读全文
摘要:I had originally created the index with the property IndexName and finally found out that this did not select my index. Selecting the index by the property IndexFieldNames worked fine, as the followin...
阅读全文
摘要:Debug 资料大全Debug-PC之开山老祖 Debug 原意是杀虫子。这里是机器调试工具。 其实,Debug的由来,还有一则趣闻,在早期美国的一计算机房中,科学家正在紧张的工作。同时,许多台大型的计算机也在不停的运行着。大概是由于,机器过热,引来许的小虫子,以至于,计算机无法正常运行。科学们,只好停下来,捉虫子...虫子捉完了,计算机运行也正常了,后来,这个名词就沿用至今了....虽然,现...
阅读全文
摘要:有几个朋友经常向我问题在DLL中怎么共用一个全局变量。比如像用户登陆后的用户名(UserName)...其实这个问题很简单。下面我把我的做法写出来大家一起分享。把共享的变量放在主程序里:UserName,....等等,在主程序里写两个函数Function CurUserName():PChar;begin Result:=pchar(UserName);end;procedure SetCurUs...
阅读全文
摘要:浅谈Object Pascal的指针 Nicrosoft(nicrosoft@sunistudio.com) —— 2001.8.26 http://www.sunistudio.com/nicrosoft/ 东日文档:http://www.sunistudio.com/asp/sunidoc.asp 大家都认为,C语言之所以强大,以及其自由性,很大部分体现在其灵活的...
阅读全文
摘要:2004-12-17 09:56:58 TCP/IP INFO(31329846) Integer 类型 咋 转换 成 Set of 类型呀 2004-12-17 10:03:26 /:>D10.天地弦(185511468) TSets(integer) 2004-12-17 10:04:17 TCP/IP INFO(31329846) 好,我试试,昨天找帮助,找了半天也没找到 200...
阅读全文
摘要:function IsNumber(const s: string): Boolean;var i: Integer;begin if IsEmpty(s) or not (Pos('-', s) in[0, 1]) then begin Result := False; Exit; end; Result := True; for i := 1 to Length(s) ...
阅读全文
摘要:發表人 主題 (回應篇數:2/閱讀次數:254) databeginner 會員 男22 China 5 篇發表文章 0 分答題得分 1 分總積分 發表於 - 2003/06/16 : 19:25:59 客戶端:var at:array of string;beginSocketConnection.AppServer.array_test(at); end;中間...
阅读全文
摘要:KeyLife富翁笔记 作者: hongxing_dl标题: ClientDataSet探讨(4)--提交与恢复 关键字: midas 分类: 开发经验 密级: 公开 (评分: , 回复: 0, 阅读: 111) »» 提交更新过程: 首先,客户程序要调用ApplyUpdates函数向应用服务器提出申请,ApplyUpdates函数将通过IProvider接口把Delta...
阅读全文
摘要:要用到第三方控件DBGridEh,设置AutoSortMakerting procedure DgbMainSortMarkingChanged(Sender: TObject); var i, j: integer; IndexFieldName, AFieldName, s: string; Desc: Boolean;begin s := ''; // for i := 0 to...
阅读全文
摘要:KeyLife富翁笔记 作者: hongxing_dl标题: ClientDataSet探讨(1)-介绍 关键字: midas 分类: 开发经验 密级: 公开 与TTable、TQuery一样,TClientDataSet也是从TDataSet继承下来的,它通常用于多层体系结构的客户端。很多数据库应用程序都用了BDE,BDE往往给发布带来很大的不便,因而TClientDa...
阅读全文
摘要:KeyLife富翁笔记 作者: hongxing_dl标题: ClientDataSet的隐含功能 关键字: Midas 分类: 开发经验 密级: 公开 ClientDataSet的隐含功能------转载《Delphi 从入门到精通》 可能与前面的笔记有重复的地方 ClientDataSet组件支持很多特性...
阅读全文
摘要:接口有什么用,可能大部分程序员都不太清楚这个东东。我写程序也有三年了,也刚刚开始对接口有点了解。我就不在这里就不准备多费劲说接口的概念了。下面我就随便说说接口这玩意,说得不好的地方请高手指点。 接口(Interface)和类(class)有点类似,接口只有申明,没有实现部分。实现是通过其它类来的。相信很多程序员都看过接口怎么申明。怎样通过类来实现。可能大部分同胞主要...
阅读全文