Building Applications in Delphi Using the Visual Component Library - Part 1

Starting with "Hello World" and covering using your first 20 VCL components

   Watch Promo

Building Applications in Delphi Using the Visual Component Library - Part 1

Delphi is a fantastic tool for building applications for a variety of platforms. In this course we are going to focus on building applications for Windows using the Visual Component Library (VCL). This course (and subsequent parts) is the most comprehensive and in-depth of its kind, from it you will learn many VCL controls and how to use them in more detail than most experienced Delphi developers.

This course will cover building applications in Delphi from the ground up, we start with "Hello, World!", and proceed to cover 20 essential visual controls (labels, edits buttons, etc.), examining their Properties, Events and Methods (PMEs) in great depth. We look at many common properties and ways build your user interface so that it is responsive to changes in size, shape and state.

Actions are covered allowing you to keep the state of your application consistent and updated with minimal code (in fact, sometimes even no code at all).

Finally we bring things together and build an application to display the periodic table of the elements. We also build an installer so we can easily distribute it.

Who this course is for

If you are new to Delphi, then this course is a great way to get quickly up-to-speed on building user interfaces for Windows. If you are familiar with Delphi you will learn the VCL in greater depth. Even if you are very experienced in Delphi you will likely a number of great tips (I certainly did while producing this course).

This course is not for

  • Building cross-platform applications - the focus is Windows only (32/64 bit)
  • Learning to program in the Delphi language - although there will be a number of examples

Course length: 6 hours

This course is also included as part of the following bundles:

Building Applications in Delphi with the Visual Component Library - Complete 3 Course Bundle ($99)


The LearnDelphi.TV Mega-Pack Bundle (10 Courses / 33+hrs) ($199)

Your Instructor

Alister Christie
Alister Christie

I have been programming in Delphi since 1999, primarily building and maintaining applications for the real estate, banking and legal industries here in New Zealand, in these roles I have also used other technologies such a C#, Ruby on Rails, Android/Java, but Delphi is my favorite environment. I have presented at numerous online CodeRage conferences, these conferences last for an entire week with thousands of participants (the replays for all of my presentations are available on this site), and I was an international guest speaker at ADUG in 2013. Most of my videos also appear on YouTube, for which I have over a million views, and over five thousand subscribers.

In 2012 Embarcadero invited me to join a select group of Delphi experts from around the world to form the Embarcadero MVP program, to which fewer than 100 people worldwide have been admitted (I'm the only one from New Zealand).

I also play guitar, invest in real estate, regularly work out at the gym, and of course maintain the courses.

Frequently Asked Questions

When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

Get started now!

wpac_init = window.wpac_init || []; wpac_init.push({widget: 'Review', id: 6713}); (function() { if ('WIDGETPACK_LOADED' in window) return; WIDGETPACK_LOADED = true; var mc = document.createElement('script'); mc.type = 'text/javascript'; mc.async = true; mc.src = ''; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(mc, s.nextSibling); })();