随笔分类 - Delphi
Blogs about Delphi language programing
摘要:上传文件到七牛, 支持分片分段上传, 适用于Delphi XE, 10等新版本 分两个函数: uploadToQiniu 和 directUploadToQiniu uploadToQiniu 这个函数使用分片, 分段的方式上传, 并有上传进度回调, 采用多线程同时进行, 该方法适用于上传较大文件。
阅读全文
摘要:Delphi里的多语言处理方法都一样, 都是通过资源DLL的形式进行加载处理。 Delphi在加载form数据的时候会判断当前的系统语言,然后根据语言加载不同的资源dll, 来实现多国语言的功能。 下面我给你说怎么样生成多国语言DLL 选择工程 继续点下一步 然后点Finish 点击ok, 然后会进
阅读全文
摘要:[转自]http://www.neugls.info/?p=191(注:不好意思,如果你已经应用了该代码的话,请注意,在HttpQueryInfoA函数之前加上一个Reservered:=0;不然,会不能正确的获取到文件的大小。)WinInet functions were used in windows to help developers develop network application more conveniently, but there is no Delphi code example on the internet, so I give some code here, h
阅读全文
摘要:简介在这篇文章中,我将大概的从Delphi XE2 的Dialogs单元入手,分析ShowMessage,MessageBox等对话框运行原理,希望能帮助你理解Delphi,不求你爱上她,只求让你能快速地解决问题。跟踪代码为了了解这些对话框的运行原理,我们需要跟踪进源代码中去,为此,你需要做如下设置1. 简单创建一个使用了ShowMessage的VCL应用程序unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls..
阅读全文
摘要:本文转自: NeuglsWorkStudio http://www.neugls.info/?p=130 Request control use sqlite3 as its database, connected by sqlitewrap. If you want to know more about sqlitewrap, please visit this website: http://...
阅读全文
摘要:Delphi 的消息分发机制 话说Delphi的消息分发机制的实现,有两个关键因素,第一个是TObject,另一个是,个人认为也是最重要的一个是,VMT(virtual method table).我们都知道,一个函数,我们如果要将这个函数定义为可以处理那个特定消息的函数是,都需要加上一个关键字,Message,然后后面加上你要处理的消息ID。而消息分派机制的魔法就在这里。 当我们在函数后面跟上M...
阅读全文
摘要:多线程编程感悟线程是一个执行体一个进程的数据对所有线程都可见数据和线程是分开的,数据不属于任何线程界面由主线程管理主类实例与主线程什么关系实例是进程里的一段内存,这段内存可能含数据和方法实例的方法与主线程或其他线程有什么关系?当主线程调用 了实例的代码,也就是说将实例的代码放到主线程去执行了而已数据与界面的分离:控制界面的代码不直接保管数据主线程就是不断地获取消息,处理消息,而这个处理消息的过程就...
阅读全文
摘要:On systems based on the IA-32 architecture, the FPU control word includes bits that control the FPU's precision, rounding mode, and whether exceptions generate signals if they occur, if you want to k...
阅读全文
摘要:初在Delphi里进行处理错误时,最常用的做法是try….except ….end. 例如:try raise Exception.Create('Error Message'); except on e:Exception do begin ShowMessage(e.Message); end; end;而现在要说的是另外的一种做法:var ExceptionObj : TObject;beg...
阅读全文
摘要:本文转自:http://www.neugls.info/?p=97JVCLThe JEDI Visual Component Library (JVCL) consists of a large collection (currently ca 500) visual and non-visual components which can be instantly reused in your Delphi, Kylix and C++ Builder projects. You can visit this website to know more about JVCL: http://jv
阅读全文
摘要:问题是这样的。在我的程序中,我用json存放用户的设置,保存到文件中。当我的程序版本升级时,我往用户的设置中增加了新的Fields。当我从用户的机器中读取老版本的设置时,会出现错误。我的读取与写入代码如下:procedure ReadFromStream<T>(Stream: TStream; var O: T);var CTX:TSuperRttiContext; Size:Cardinal; ...
阅读全文
摘要:最近,Delphi推出了64位预览版本, 我做为一个忠实的Delphier, 看到这消息后,第一时间学习,并写下这个做为以后的参考资料。 相同点: 在Delphi 64位版本中,UnicodeString,AnsiString,WideString在使用上与32没有区别,只是索引变成了64位,如:S[I]中的I变成了64位。 Singed typesDelphi/32Delphi/64ShortInt1 bytes←SmallInt2 bytes←LongInt4 bytes←Integer4 bytes←Int648 bytes←Unsinged typesDelphi/32Delphi/.
阅读全文
摘要:SuperObject 已经支持Delphi2010, 使用起来觉得很方便,也比较少出现错误,具体的使用方法在万一的博客上已经说的很清楚!下面是我遇到问题的产生原因与解决方法类型声明:typeTNRA=recordend;TNRB=record A:String; B:Integer;end;TNRTest=record A:TNRA; B:TNRB;end;处理代码:var Test:TNRTest; CTX:TSuperRttiContext; Obj:ISuperObject; JsonString:String;begin {对Test进行处理} CTX:=TSuperRttiCont
阅读全文

浙公网安备 33010602011771号