在Delphi和WinApi函数中使用vcl组件创建gui应用程序之间是否有任何区别。
答案 0 :(得分:8)
@Azad我认为有两个很大的区别:第一个是VCL的易用性,它使您能够在窗体(窗口)上拖放控件,更改其属性并分配事件,从而提高您的工作效率GUI的发展。
另一个很大的区别是最终应用程序的大小,如果您仅使用WINAPI调用创建应用程序,则最终应用程序将小于使用VCL。
我建议您看一下项目KOL(KOL - Key Objects Library是一组使用Delphi但没有VCL(或Free Pascal)开发功能(但很小)的32位Windows GUI应用程序的对象。免费发布,附带源代码。)。
答案 1 :(得分:7)
VCL是一个完整的框架,包含Windows API,使开发人员免受血腥细节的影响,使得开发Delphi应用程序变得更加容易。
与Windows版本更改相比,您在生产力和兼容性方面获得了巨大的成就......
答案 2 :(得分:7)
几乎所有真实的Delphi应用程序都使用VCL,并且还可以对Win32 API进行OCCASIONAL直接调用。无论如何,VCL框架最终会调用Win32调用。所以,你几乎总是使用两者。
那个提到KOL的人正在建议另一个“中间”层,因为直接进行是极度痛苦的。
Microsoft(按历史顺序),MFC和ATL for C ++,以及.NET for C#/ VB.net语言,作为“框架”层,位于应用程序和原始Win32 API之间,用于MS Visual工作室产品。
编写比Notepad.exe更复杂的东西直接使用“金属”(Win32 API raw)的人很少见。因此,它更难,学习需要更长时间,并且做所有事情。最后,它并没有明显更快或更好。如果你真的需要小(就像你正在写病毒),也许你可能想要Win32原生。
答案 3 :(得分:5)
嗯,当然,VCL需要一个Borland编译器。 Win32 API适用于任何语言。使用GUI类库(如VCL)的目的是使创建支持GUI的程序更容易。仅使用Win32这样做是非常有害的。
答案 4 :(得分:4)
时间,时间,然后更多的时间。
答案 5 :(得分:2)
您使用WinAPI执行VCL无法“执行”的操作。