Delphi Sitemap - Page 1 2016-09-26

Understanding, Using and Enhancing Delphi VCL Components
Tutorials and articles on using Delphi Visual Component Library (VCL) controls and components more efficiently at design and run time.

Component Arrays and Run-Time VCL Creationion
Articles about visual form inheritance, creating component arrays in Delphi, creating and reusing Forms and Controls at Run Time.

TColorButton - Button with Color Properties
Full source code of the TColorButton Delphi component, an extension to the standard TButton control, with font color and background color.

Streams, Streams, TStream in Delphi
Learn about using the TStream class in Delphi: how to use stream objects to read from, write to, or copy information stored in a particular medium.

TreeView with Check Boxes and Radio Buttons
Here's how to add check boxes and radio buttons to a TTreeView Delphi component. Give your applications a more professional and smoother look.

Get TreeView Node By Text - How To
Learn how to locate a TreeView node given by node text using Delphi. For those developing Delphi applications using the TreeView component..

Drop Down List (DBLookupComboBox) Inside a DBGrid
Create visually more attractive user interfaces for editing lookup fields inside a DBGrid - place a DBLookupComboBox into a cell of a DBGrid.

Sort Records in Delphi DBGrid by Column Title
How to sort records in Delphi DbGrid by clicking on the column title. Plus: how to change the appearance of the selected column title with sort order.

Customizing the DBNavigator
Enhancing the TDBNavigator component with modified graphics (glyphs), custom button captions, and more. Exposing the OnMouseUp/Down event for every button.

NO GUI Delphi Applications - How To
Creating a console mode application with Delphi; a text-mode program that runs without a graphical interface. Learn more about no GUI Delphi applications.

Build Database Applications with Delphi
Delphi Database Programming articles, tutorials, tips and techniques. SQL Server, Access, Firebird, Interbase, dgGO (ADO), BDE, BDP, BDP.Net, ADO.NET, dbExpress related articles and tutorials.

Putting a CheckBox Inside a DBGrid
Adding components to a DBGrid. Here's how to place a check box into a DBGrid. Create visually attractive user interfaces for editing boolean fields.

DBGrid with MultiSelect
Multiple row selection in Delphi DBGrid - providing the ability to select multiple records within the grid. Learn this step of Delphi Database Programming.

Coloring the TDBGrid Delphi Component
Learn all about coloring DBGrid. Learn how to enhance the functionality of a TDBgrid component using colors to distinguish yourself from others.

Selecting and Highlighting a Row in a DBGrid
Need to highlight the row behind the mouse cursor in a DBGrid? Here's how to select (make active record) and highlight (change color, font, etc.) a row.

Delphi Enhanced Forms, Dialogs, MDI, SDI
Extending the functionality of the Delphi Form object, building block of your Delphi application’s user interface.

Delphi Programming - Inside and Out
Delphi language, IDE tips, techniques and articles. Every programming aspect of Delphi is uncovered: OOP, Threading, File IO, RTL, VCL ...

Clipboard Basics (Cut / Copy / Paste) - Delphi Code
This article will show you how to use the TClipboard object to implement cut-copy-paste features in your Delphi application.

Execute and Run Applications and Files from Delphi Code
Have you ever needed to open documents in a file listbox, just by double clicking on them, without opening the associated program first? Learn how.

About Delphi Programming Tips - 2009
Delphi tips from the free About Delphi Programming newsletter, year 2009.

About Delphi Programming Tips - 2000
Delphi tips from the free About Delphi Programming newsletter, year 2000.

About Delphi Programming Tips - 2001
Delphi tips from the free About Delphi Programming newsletter, year 2001.

About Delphi Programming Tips - 2002
Delphi tips from the free About Delphi Programming newsletter, year 2002.

About Delphi Programming Tips - 2006
Delphi tips from the free About Delphi Programming newslette, year 2006.

Delphi Tips, Tricks and Delphi Code Snippets
Delphi code snippet, tips & tricks. If you can't find some Delphi tip in here, this tip simply does not exist!

About Delphi Programming Tips - 2010
Delphi tips from the free About Delphi Programming newsletter, year 2010.

Virtual Key Codes
Learn symbolic constant names and keyboard equivalents for the virtual key codes used by Windows. How to enhance the functionality of a TDBgrid component.

Ordinal and Enumerated Data Types for Delphi
Learn how Delphi uses standard Windows-format resource files: icons, bitmaps, and cursors. Extend Delphi's built-in types by constructing your own types.

Exchanging Data Over the Network Using Delphi
Learn about creating a console mode application with Delphi; a text-mode program that runs without a graphical interface. See how to capture the output.

Get My IP with Delphi Programming
Extend Delphi's built-in types by constructing your own types. Learn how to obtain the IP address of a computer connected to the Internet with Delphi.

System Tray Delphi Application - Quick and Easy
Learn about exchanging data over the Network using Delphi. Delphi components TServerSocket and TClientSocket let you read info over a TCP/IP connection.

Accessing and Managing MS Excel Sheets with Delphi
Learn about placing Delphi applications in the System Tray in easy steps. The perfect place form programs can run for a long time without user interaction.

Implementing PING Without Using Raw Sockets
Here's how to obtain a computer's IP address by using the Socket API and Delphi's Pascal. Icmp.dll allows developers to write ping applications on Windows.

Delphi Programming Challenges / Exercises
Delphi programming exercises are designed to help you solve a particular task; write a handy Delphi algorithm; get new ideas on how to code faster / better Delphi code. Help others and others will help you.

Free Delphi Source Code: Projects, Controls, Components
Ready made free Delphi applications with source and how-to projects.

Creating Custom Delphi Components, Part I - Page 5/5
Sharpen your skills with some of the best approaches to building components, tips on deciding on the best base class to inherit from, how to use virtual declarations, the complexities of overriding, and more.

Queries with ADO - DB/7
Chapter seven of the free Delphi Database Course for beginners. Take a look at how you can take advantage of the TADOQuery component to boost your ADO-Delphi productivity.

Free PDF Library for Delphi Developers
in Delphi and PDF :: Are you developing a Delphi application with a task to do PDF document manipulations? Portable Document Format, PDF, is a file format

Reverse Engineering (Decompiling) Delphi Applications
in Advanced Delphi :: Simply speaking, decompilation is the inverse of compilation: translating an executable file into a higher level language. Suppose you

Get Delphi Certified For FREE!
Delphi.

Generating QR-Code Using Delphi
Delphi.

Create Smaller Delphi XE Executables: Remove RTTI, Pack EXE
Delphi.

Download Free Version of (Turbo) Delphi!
ADP :: As. Delphi.

About Delphi Programming For Novice Developers
What You Need to Know About Delphi Programming. The purpose of this page is to orient newcomers with an overview of some special features of the About Delphi Programming Web site.

The History of Delphi
Concise descriptions of Delphi versions and its history, along with a brief list of features and notes. Find out how Delphi evolved from Pascal to a RAD tool that can help you deliver high-performance, scalable applications ranging from desktop and database solutions to mobile and distributed applications for the Internet – not only for Windows but also for Linux and the .NET.

Delphi History – from Pascal to Embarcadero Delphi XE 2
Concise descriptions of Delphi versions and its history, along with a brief list of features and notes. Find out how Delphi evolved from Pascal to a RAD tool that can help you deliver high-performance, scalable applications ranging from desktop and database solutions to mobile and distributed applications for the Internet not only for Windows but also for Linux and the .NET. Page 2.

Explanation of Delphi
Concise descriptions of Delphi versions and its history, along with a brief list of features and notes. Find out how Delphi evolved from Pascal to a RAD tool that can help you deliver high-performance, scalable applications ranging from desktop and database solutions to mobile and distributed applications for the Internet not only for Windows but also for Linux and the .NET. Page 3.

What Delphi Files to Store in a Source Control System
List of the file extensions created (and used) by Delphi and what they all mean. Plus, get to know what Delphi generated files should be stored in a source control system.

Filename Extensions in Delphi - What Delphi files to store in a Source Control system
List of the file extensions created (and used) by Delphi and what they all mean. Page 2.

Filename Extensions in Delphi - What Delphi files to store in a Source Control system
List of the file extensions created (and used) by Delphi and what they all mean. Page 3.

An introduction to the Delphi Language
An introduction to Delphi Pascal. Before you start developing more sophisticated applications by using the RAD features of Delphi, you should learn the basics of the Delphi Pascal language.

Understanding Delphi Project Files (.DPR)
Delphi organizes applications into what is called projects. A project is made up of the visual interface along with the code that activates the interface. Each project can have multiple forms, allowing us to build applications that have multiple windows. Find out about Delphi's Project File in this article!

Understanding and Using Loops in Delphi Programming
Loops allow you to execute a sequence of statements repeatedly, using a control condition or variable to determine when the execution stops. Delphi has three kinds of control loop: repeat statements, while statements, and for statements. Learn how to use loops in Delphi programming.

Understanding Delphi SET Type - Expert Guide
One of the Delphi language features not found in other modern languages is the notion of sets. Delphi's set type is a collection of values of the same ordinal type. Learn about Delphi sets to better understand Delphi source code.

Understanding and Using Record Data Types in Delphi
Learn about records, Delphi's data structure that can mix any of Delphi's built in types including any types you have created.

Running Delphi Applications With Parameters
How to pass command-line parameters to your Delphi application and how to handle them.

How to Use Functions and Procedures in Delphi
Have you ever found yourself writing the same code over and over to perform some common task within event handlers? Yes? It's time for you to learn about programs within a program. Let's call those mini programs subroutines.

Using dbExpress in Delphi Database Applications
Overview of dbExpress, along with a collection of tutorials and articles on building database applications using this data access technology.

Storing Record Data in a BLOB Field - Delphi
Here's how to store (and retrieve) a record (structure) value into a BLOB field in Delphi database applications.

Understanding and Using Array data types in Delphi
The concept of arrays in Delphi is simple: arrays allow us to refer to a series of variables by the same name and to use a number (an index) to tell them apart. Arrays have both upper and lower bounds, and the elements of the array are contiguous within those bounds.

Delphi OOP Part 9 - Chapter 21
Delphi OOP Part 9 Summary: Reviewing the different conditions for inheritance, for association and for composition. Implementing association and composition. Shallow and deep copies. Association and composition in terms of cooperation, encapsulation, ownership andpropagation. PDF and Source Code download.

Association and Composition In Delphi OOP
Delphi OOP Part 9 Summary: Reviewing the different conditions for inheritance, for association and for composition. Implementing association and composition. Shallow and deep copies. Association and composition in terms of cooperation, encapsulation, ownership andpropagation. PDF and Source Code download. Page 3.

Manipulating BDE Aliases from Delphi Code
The BDE uses an Alias to access a particular database. The terms alias and database are synonymous when talking about the BDE. Find out about various methods available to Delphi developer when working with the BDE aliases from code.

Delphi Tips, Tricks and Code Snippets
Delphi tips, tricks and code snippets. Looking for a small code sample to help you make something big? It's here!

Managing Ascii (Text) Files from Delphi Code
Reading and writing to text (ascii) files using Delphi code. Find out how to read a line by line of a txt file and how to write some data back to the file.

Understanding the Birth, Life and Death of a Delphi Form
Examining the life cycle of a Delphi Form - the central element of development in Delphi. See what's happening behind events OnCreate, OnActivate, OnShow, OnClose...

An Example of Artificial Intelligence Using Delphi
A Simple example of Artificial Intelligence using Delphi. The article explores Delphi approach to AI, using the pebble picking game. A simple game is used to show how computer can learn by correcting mistakes.

Sending Emails With Attachments Using Delphi and Indy
Send email messages with attachments using Indy and Delphi. Full source code to a simple

Create an Internet Shortcut (.URL) file using Delphi
Unlike regular .LNK shortcuts (that point to a document or an application), Internet Shortcuts point to an URL (web document). Here's how to create an .URL file, Internet Shortcut, using Delphi.

Creating Delphi components dynamically (at run-time)
Most often when programming in Delphi you don't need to dynamically create a component. If you drop a component on a form, Delphi handles the component creation automatically when the form is created. This article will cover the correct way to programmatically create components at run-time.

Dynamic Component Creation and Testing
Most often when programming in Delphi you don't need to dynamically create a component. If you drop a component on a form, Delphi handles the component creation automatically when the form is created. This article will cover the correct way to programmatically create components at run-time. Page 2.

Tips for Multi-Resolution Delphi Applications
What to keep in mind when scaling Delphi applications (forms) on different screen resolutions.

Multi-Resolution Delphi Applications
What to keep in mind when scaling Delphi applications (forms) on different screen resolutions. Page 2.

Save a Web Page as HTML or MHT Using Delphi
Here's how to save a web page displayed inside a WebBrowser (TWebBrowser component) as a raw HTML file or into a single (MHT) file (MHTML format: web archive - single file) programmatically using Delphi.

Populate/Submit Forms Using 'TWebBrowser' in Delphi
A web form or a form on a web page allows a web page visitor to enter data that is, in most cases, sent to the server for processing. When using the web browser (TWebBrowser) Delphi control you can programmatically fill in web form fields and submit the fom - using Delphi code. Here's how.

A Guide to Using the TClientDataSet in Delphi Applications
Looking for a single-file, single-user database for your next Delphi application? Need to store some application specific data but you do not want to user the Registry / INI / or something else?

RTTI and TScreen in Delphi Control
Generic solution to changing the background color (and other properties) of the focused (selected for input) Delphi control. Learn how to exploit the powers of the RTTI, OnEnter and OnExit events of a Delphi control along with the TScreen's OnActiveControlChange event to provide a more user friendly application interface. Page 2.

Generic Solution to Coloring the Focused Entry Control
Generic solution to changing the background color (and other properties) of the focused (selected for input) Delphi control. Learn how to exploit the powers of the RTTI, OnEnter and OnExit events of a Delphi control along with the TScreen's OnActiveControlChange event to provide a more user friendly application interface. Page 3.

Using the TDBGrid Control in Delphi Database Apps
Contrary to most other Delphi data-aware controls, the DBGrid component has many nice features and is more powerful than you would have thought. The

What does #13#10 stand for, in Delphi code?
You've certainly seen

Delphi IDE (Code Editor) Keyboard Shortcuts
Following is a short list of convenient editor keyboard shortcuts for the default keybinding that is shipped with Delphi 2006.

How to Declare and Initialize Constant Arrays in Delphi
Sometimes you need to declare a constant array in Delphi - a read-only array. You cannot change the value of a constant or a read-only variable. Therefore, while declaring a constant array you have to initialize it. Here are a few examples of declaring and initializing constant arrays in Delphi...

Memory Leak Notification in Delphi on Program Exit
One of the nicest features of the

Generic Solution to Coloring the Focused Data Entry Delphi Control
Generic solution to changing the background color (and other properties) of the focused (selected for input) Delphi control. Learn how to exploit the powers of the RTTI, OnEnter and OnExit events of a Delphi control along with the TScreen's OnActiveControlChange event to provide a more user friendly application interface.

Understanding Drag and Drop Operations in Delphi
Delphi makes it easy to program dragging and dropping into our applications. You can even drag and drop from one form to another.

Delphi FAQ - Match a Mask - Search Files and Folders
Stop. This is the one and only solution to file searching. Use Delphi to find any file in any directory and/or subdirectory that match a certain mask. Start searching.

Store a String Along with a String in Delphi's ListBox
There are situations when you want to display a list of strings to the user, for example in the list box control, but also have a way to store one more additional string (or event an object instance) along the one displayed to the user. Here's how when using Delphi.

How to Display Menu Item Hints in Delphi applications
By (Windows) design, in Delphi applications, hints assigned to menu items do not get displayed in the popup tooltip window (when the mouse hovers over a menu). To mimic the Windows Start menu or the Favorites menu of the Internet Explorer (and display hints for menu items) you must create your own hint window. Here's how...

Menu Item Hints in Delphi Applications Full Source Code
By (Windows) design, in Delphi applications, hints assigned to menu items do not get displayed in the popup tooltip window (when the mouse hovers over a menu). To mimic the Windows Start menu or the Favorites menu of the Internet Explorer (and display hints for menu items) you must create your own hint window. Here's how... Page 2.

Advanced Mouse Processing in Delphi Applications
More sophisticated Mouse techniques. Is mouse Present? Handling OnMouseEnter, OnMouseLeave. Restrict movement, Set Position, Faking clicks, etc.

Make The Enter Key Work Like Tab in Delphi Applications
Pressing the Tab key moves the input focus to next control and Shift-Tab to previous in the tab order of the form. When working with Windows applications, most users intuitively expect the Enter key to behave like a Tab key.

Get the Url of a Hyperlink in a TWebBrowser Document
A typical Web Browser displays, in the status bar, the URL of the hyperlink when the mouse hovers over a link in a HTML document. Here's how to implement event sinking for a document displayed by the TWebBrowser component (in Delphi applications) - and get the info of a HTML element below the mouse.

TWebBrowser Document Event Sinking Example Source Code
A typical Web Browser displays, in the status bar, the URL of the hyperlink when the mouse hovers over a link in a HTML document. Here's how to implement event sinking for a document displayed by the TWebBrowser component (in Delphi applications) - and get the info of a HTML element below the mouse. Page 2.

Format Date/Time Values for Access SQL in Delphi
Fixing the. Delphi.

How to Hide the Tabs of the TPageControl Delphi Control
If you need to create a wizard-like user interface where you have

Array as a Function Return Type and Method Parameter
When you declare Delphi routines that take array parameters, you cannot include index type specifiers in the parameter declarations. The same goes for functions that return array values. Here's how to solve this

Find Glyphs and Icons for Application, Menu, Toolbar in Delphi
A glyph in Delphi lingo is a bitmap image that can be displayed on a BitBtn or SpeedButton controls using the controls Glyph property. Glyphs and icons (and graphics in general) make your application user interface elements look professional and unique.

Edit and Display Boolean Fields using a CheckBox in Delphi
The article CheckBox inside a Delphi DBGrid provides one method of using a check box control to edit and display values for boolean fields. Rene suggest an easier approach needing only two even handlers: OnCellClick and OnCustomDrawCell for your DBGrid control...

BPL vs. DLL in Delphi Programming Applications
An overview of creating and using 'Borland Package Libraries' and how they compare with 'Dynamic Link Libraries' in creating smaller Delphi applications.

BPL vs. DLL; Packages vs. Dynamic Link Libraries in Delphi programming
An overview of creating and using 'Borland Package Libraries' and how they compare with 'Dynamic Link Libraries' in creating smaller Delphi applications. Page 2.

BPL vs. DLL; Packages vs. Dynamic Link Libraries in Delphi programming
An overview of creating and using 'Borland Package Libraries' and how they compare with 'Dynamic Link Libraries' in creating smaller Delphi applications. Page 3.

Understanding Delphi Class Methods
Understanding and using Borland Delphi Class procedures / functions. What they are and how to find a practical use for them.

Delphi Compiler Version Directives: {$IFDEF VER180}
Preparing to code with no barriers. See how to overcome the compiler version problem: compiling Delphi code for various Delphi versions.

Calculate MD5 Hashing for a File or String Using Delphi
The MD5 Message-Digest algorithm is used to check the integrity of files. Learn how to easily create a function to calculate the MD5 hash for a given file.

The Dark Side of Application.ProcessMessages
When programming an event handler in Delphi (like the OnClick event of a TButton), there comes the time when your application needs to be busy for a while, e.g. the code needs to write a big file or compress some data. If you do that you'll notice that your application seems to be locked. Your form cannot be moved anymore and the buttons are showing no sign of life. It seems to be crashed. Application.ProcessMessages might come as a rescue, but you need to know its dark side!

Dynamic Link Libraries (DLL) and Delphi
Everything you ever wanted to know about DLLs and Delphi but didn't know where to look for answers (or were to afraid to ask)

Understanding and Processing Keyboard Events in Delphi
Get familiar with the OnKeyDown, OnKeyUp, and onKeyPress Delphi event procedures to respond to various key actions or handle and process ASCII characters along with other special purpose keys.

Delphi Record Helpers For Sets and Other Simple Types
The Understanding Delphi Class (and Record) Helpers article introduces a feature of the Delphi language allowing you to extend the definition of a class or a record type by adding functions and procedures (methods) to existing classes and records without inheritance. In XE3 Delphi version, record helpers became more powerful by allowing to extend simple Delphi types like strings, integers, enums, sets and alike. Here's a sample helper for a set of bytes.

Method Overloading and Default Parameters in Delphi
Extending Delphi functions and procedures with default (optional) parameters and method overloading.

Delphi Applications - Owner vs. Parent
The differences between a Delphi component Owner and its Parent explained. Plus: when to use the Controls and Component properties of a Delphi component.

Understanding and Using Pointers in Delphi
An introduction to pointer data type in Delphi. What are pointers, why, when and how to use them.

How to Manipulate INI files from Delphi
The .INI files have a text-based file format for representing application configuration data in a format which is easily editable by humans and readable by a simple automatic parser. Learn how to use Delphi's TIniFile to read and write INI configuration files.

The Sender Parameter and Substitution - Delphi OOP Part 5 - Chapter 11
An important consequence of an inheritances hierarchy is the concept of substitution, where an instance of a subclass object can substitute for a variable declared as any of its supertypes. In this brief chapter we introduce the concept of substitution by investigating the Sender Delphi parameter that is part of the parameter list of every event handler.

Alternative Typecasting Operator In Delphi
An important consequence of an inheritances hierarchy is the concept of substitution, where an instance of a subclass object can substitute for a variable declared as any of its supertypes. In this brief chapter we introduce the concept of substitution by investigating the Sender Delphi parameter that is part of the parameter list of every event handler. Page 3.

Delphi OOP Part 5 - Chapter 11
An important consequence of an inheritances hierarchy is the concept of substitution, where an instance of a subclass object can substitute for a variable declared as any of its supertypes. In this brief chapter we introduce the concept of substitution by investigating the Sender Delphi parameter that is part of the parameter list of every event handler. Page 4.

Introduction to Type Inheritance in Delphi
Polymorphism is the combination of substitution and dynamic binding. In step 1 of this example we'll look at what happens if we use neither substitution nor dynamic binding. In step 2 we'll use substitution with static binding.

Delphi OOP Part 6 - Chapter 13 - Step 2 Calling Additional Subclasses
Learn about Polymorphism and why it's so important. In step 1 of this example we'll look at what happens if we use neither substitution nor dynamic binding. In step 2 we'll use substitution with static binding. Page 3.

Object Oriented Programming with Delphi - Implementation and Summary
Use Delphi to teach object orientation. Delphis roots lie in Pascal, and so it has a sound, structured foundation. It is also strongly object oriented and provides many OO characteristics such as class inheritance, static binding and dynamic binding, and reference semantics. Chapters make extensive use of graded, worked examples to give students hands-on experience in the implementation of OO code. Page 4.

Learning Object Oriented Programming with Delphi: Chapter 2
Among the various RAD facilities that Delphi offers is a visual builder for graphical user interfaces (GUIs). This greatly simplifies the building of a user interface and allows the programmer to concentrate on programming. Adding a second form to a project, programmatically creating and freeing a form, and more...

Learning Object Oriented Programming with Delphi
Among the various RAD facilities that Delphi offers is a visual builder for graphical user interfaces (GUIs). This greatly simplifies the building of a user interface and allows the programmer to concentrate on programming. Adding a second form to a project, programmatically creating and freeing a form, and more... Page 2.

Learning Object Oriented Programming with Delphi: Chapter 2
Among the various RAD facilities that Delphi offers is a visual builder for graphical user interfaces (GUIs). This greatly simplifies the building of a user interface and allows the programmer to concentrate on programming. Adding a second form to a project, programmatically creating and freeing a form, and more... Page 4.

Learning Object Oriented Programming with Delphi: Chapter 2
Among the various RAD facilities that Delphi offers is a visual builder for graphical user interfaces (GUIs). This greatly simplifies the building of a user interface and allows the programmer to concentrate on programming. Adding a second form to a project, programmatically creating and freeing a form, and more... Page 5.

Class Inheritance in Delphi Programming - Part 2 - Chapter 4
In Chapters 1, 2 and 3 we talked about three perspectives on objects: objects as independent entities, objects as derived entities and objects as interacting entities. In this chapter we will take a first look at objects as derived entities by using one of Delphis RAD facilities called Visual Form Inheritance (VFI).

Introduction to Class Inheritance (Delphi OOP Tutorial)
In Chapters 1, 2 and 3 we talked about three perspectives on objects: objects as independent entities, objects as derived entities and objects as interacting entities. In this chapter we will take a first look at objects as derived entities by using one of Delphis RAD facilities called Visual Form Inheritance (VFI). Page 2.

Introduction to Class Inheritance (Delphi OOP Tutorial)
In Chapters 1, 2 and 3 we talked about three perspectives on objects: objects as independent entities, objects as derived entities and objects as interacting entities. In this chapter we will take a first look at objects as derived entities by using one of Delphis RAD facilities called Visual Form Inheritance (VFI). Page 4.

Introduction to Class Inheritance (Delphi OOP Tutorial) - Part 2 - Chapter 5
Learn how to understand Delphi's Visual Class Library and concepts like Class, SuperClass, SubClass, Inheritance, Polymorphism. What is TObject, what are Controls what are Components?

Introduction to Class Inheritance in Delphi
Take a look at Delphi's Visual Class Library and concepts like Class, SuperClass, SubClass, Inheritance, Polymorpism. What is TObject, what are Controls what are Components? Page 3.

Accessing an Object and its Data in Delphi
So far in this part of the free online Delphi OOP Lessons we have looked at ways of accessing objects data. In this example we look at accessing the objects themselves. This chapter provides an example that shows how to create a series of Client objects, add a reference to each object to a list, in this case a TListBox component, and display the contents of each object by dereferencing the matching item in the list. The PDF the Full Source Code and Homework Solutions can be downloaded.

Delphi OOP Part 4 / Chapter 10 - Homework Problems and Solutions
So far in this part of the free online Delphi OOP Lessons we have looked at ways of accessing objects data. In this example we look at accessing the objects themselves. This chapter provides an example that shows how to create a series of Client objects, add a reference to each object to a list, in this case a TListBox component, and display the contents of each object by dereferencing the matching item in the list. The PDF the Full Source Code and Homework Solutions can be downloaded. Page 3.

Programmer Defined Classes and Objects in Delphi
One way to make a computer program more robust and more amenable to change is to build it in layers. One might have a user interface layer that takes care of the interaction between the user and the program, an application layer that implements the operationsrequired by the application, and a persistence layer that takes care of permanent storage of the data. Learn how to create

Delphi OOP Part 3 / Chapter 6 - Using your Custom Class
One way to make a computer program more robust and more amenable to change is to build it in layers. One might have a user interface layer that takes care of the interaction between the user and the program, an application layer that implements the operationsrequired by the application, and a persistence layer that takes care of permanent storage of the data. Learn how to create

Understand and Prevent Memory Leaks in Delphi Applications


Handling Windows Messages the Delphi way
One of the keys to traditional Windows programming is handling the messages sent by Windows to applications. Handling Windows Messages the Delphi way!

Develop Delphi programs in Windows API (Without VCL)
A guide to developing Delphi programs in Windows API (without the use of the VCL). Free online programming course for intermediate/advanced Delphi developers. Focus on raw Windows API programming.

Clipboard Delphi Spy With Custom Clipboard Formats
Extending the clipboard's flexibility and functionality from Delphi. Taking control over the Clipboard with custom formats. Coding Delphi to receive clipboard change notifications.

Listening to the Clipboard: Clipboard Delphi Spy with Custom Clipboard Formats - 2/3
Extending the clipboard's flexibility and functionality from Delphi. Taking control over the Clipboard with custom formats. Coding Delphi to receive clipboard change notifications. Page 2.

Listening to the Clipboard: Clipboard Delphi Spy with Custom Clipboard Formats - 3/3
Extending the clipboard's flexibility and functionality from Delphi. Taking control over the Clipboard with custom formats. Coding Delphi to receive clipboard change notifications. Page 3.

Comparing Static and Dynamic DLL Loading With Delphi
Before you can call routines defined in DLL, you must import them. Functions exported from a DLL can be imported in two ways: by declaring an external procedure or function (static), or by direct calls to DLL specific API functions (dynamic). What should be used when: static or dynamic loading of DLLs in Delphi.

High Performance Timer in Delphi - TStopWatch
The TStopWatch Delphi class implements a very accurate process execution timer and provides a set of methods and properties that you can use to accurately measure elapsed time.

Use Windows Hooks in Delphi Applications
Put shortly, a hook is a function you can create as part of a dll or your application to monitor the 'goings on' inside the Windows operating system. Hooks.pas ensures hooking in Delphi applications is easy.

Creating and Using DLLs from Delphi
A Dynamic Link library, or DLL, is a collection of routines (small programs) that can be called by applications and by other DLLs. Using Delphi, we can write and use our own DLLs, and we can call functions in DLLs developed with other systems / by other developers. Find out how.

Delphi: Get Focused Control’s Rectangle for Active Control
Use Get Focused Control’s Rectangle for active (focused) control outside an Delphi application. An example of the code is included.

Intercepting Keyboard Input With Delphi
Intercepting keyboard input for controls that cannot receive the input focus. Working with keyboard hooks in Delphi.

Delphi Application Main Form - Login Password Display
If you need to implement some kind of authorization for your Delphi application you might want to display a login / password dialog *before* the main form is created and displayed to the user. In short, the idea would be to create, display, and destroy the

Send Information Between Delphi Apps With WM_COPYDATA
Learn how to send the WM_CopyData message between two Delphi applications to exchange information and make two applications communicate. The accompanying source code demonstrates how to send a string, record (complex data type) and even graphics to another application.

Access an Object and its Data - Delphi OOP Part 4 / Chapter 9
A consequence of providing encapsulation is that we must write access methods to provide a public interface to the data fields. Delphi also allows us to use properties for this publicinterface. Learn how to create properties, how to use them and what to use them for.

Accessing an Object and its Data - Delphi OOP Part 4 / Chapter 9
A consequence of providing encapsulation is that we must write access methods to provide a public interface to the data fields. Delphi also allows us to use properties for this publicinterface. Learn how to create properties, how to use them and what to use them for. Page 4.

Multithreaded Delphi Database Queries with dbGo (ADO)
To speed up data processing, for example, fetching data from the database to create reports, you can add an additional thread to fetch and operate on the result (recordset). Learn about the traps in writing Multithreaded Delphi Database Queries with dbGo (ADO).

Synchronizing Threads and GUI in Delphi application
Multi-threading in Delphi lets you create applications that include several simultaneous paths of execution. When several threads are running in the application a question arises: how to update your GUI (user interface) as a result of a thread execution. The question lies in the TThread class Synchronize method.

Create, Parse and Manipulate XML Documents With Delphi
Everything you need to know about Delphi and the Extensible Markup Language. Find out about creating and parsing XML documents, look for parser components and more.

Sizing The ComboBox Drop Down Width
When a combo box is in dropped down state Windows draws a list box type of control to display combo box items for selection. When the length (of a string) of items exceeds the width of the combobox, the items are displayed as cut-off! Here's how to ensure all ComboBox items are visible when drop down list is displayed.

Delphi Thread Pool Example Using AsyncCalls
With AsyncCalls you can execute multiple Delphi functions at the same time and synchronize them at every point in the function or method that started them. Here's an example project taking advantage of the thread pool implementation with CancelAll and WaitAll.

Getting Started with Delphi
So, you want to learn Delphi? This is the right place: Delphi tutorials and articles for beginners.

Delphi Network and Internet Programming (Directory)
Delphi Network / Internet programming knowledge base. If you need help on ActiveX, ASP, XML, CGI, WWW, HTML, FTP, TCP, Sockets ... this is the place with answers!

OOP in Delphi
Object Oriented programming in Delphi. Information on classes, objects, RTTI, desing paterns, etc.

Delphi books (online) and sample chapters
Learn Delphi from online books and sample chapters.

Learning Object Oriented Programming with Delphi - Free Online Course
Use Delphi to learn (or teach) object orientation. Delphi is strongly object oriented and provides many OO characteristics such as class inheritance, static binding and dynamic binding, and reference semantics. Chapters make extensive use of graded, worked examples to give students hands-on experience in the implementation of OO code.

Making Delphi Interoperate with Others
How to make Delphi and Delphi applications interoperate with applications written in different programming languages. How to convert the code from other languages to Delphi Pascal.

A Glossary of Delphi Programming Technical Terms
Definitions of terms having to do with Delphi programming, Pascal, OOP, BDE and programming in general.

About Delphi Programming Tips - 2007
Delphi tips from the free About Delphi Programming newslette, year 2007.

Internet Direct (Indy) - Delphi knowledge base
Internet Direct (Indy) is an open source internet component suite comprised of popular internet protocols written in Delphi and based on blocking sockets. Indy is included in Delphi 6+, Kylix 1+.

Threading in Delphi
Writing multi-threaded applications with Delphi, applications that include several simultaneous paths of execution.

Kylix - Delphi for Linux
Kylix is the only Linux development tool that combines the world's fastest compiler with the most productive visual design environment for GUI, web and database programming.

TImage - Delphi Usage Examples, Tips and Tricks
Delphi's image component, TImage, displays a graphical image, like a bitmap, icon, or metafile. Properties and methods of can be used for such things as loading an image from file, clearing the image in the TImage, and assigning an image for another control. Learn how to use the image control in Delphi programs.

Printing with TPrinter in Delphi
Using the TPrinter object in Delphi. Printing text, and bitmaps. Setting printer properties and much more.

Turbo Delphi Tutorial - Free Online Beginner Delphi Tutorial
Learn to program Windows applications in CodeGear Turbo Delphi. This free online tutorial is ideal for novice developer wanting to learn how to create stand alone deskop, database and web driven database applications using the FREE version of Borland/CodeGear Turbo Delphi Explorer.

TWebBrowser - Delphi Usage Examples, Tips and Tricks
The TWebBrowser Delphi component provides access to the Web browser functionality from your Delphi apps (to allow you to create a customized Web browsing application or to add Internet, file and network browsing, document viewing, and data downloading capabilities to your applications). Learn how to use the web browser control in Delphi programs.

TButton, TBitBtn, TSpeedButton - Delphi Usage Examples, Tips / Tricks
Buttons are the buildings blocks of any user interface. Buttons let users initiate actions and commands in a Windows application. Learn how to use various buttons controls in Delphi's VCL.

File I/O with Delphi
Manipulating files with Delphi. Find out about handling text (ASCII) files, typed files and untyped files.

Mathematics with Delphi
Find about mathematics (algebra, statistics, numbers) in Delphi. Articles, tutorials, control, components and more.

Delphi Coding Standards and Conventions
Recommendations of standards and conventions for designing, coding, and commenting software projects written in Delphi and Kylix

TComboBox - Delphi Usage Examples, Tips and Tricks
Delphi's TComboBox displays a drop down collection of items in a scrollable list that users can select and edit. Users can select an item from the list or type directly into the edit box. Learn how to use the drop down box control in Delphi programs.

TEdit, TMaskEdit - Delphi Edit Control Usage Examples, Tips and Tricks
Edit controls display text to the user and allow the user to enter text. Delphi's TEdit and TMaskEdit are simple edit controls that include a single line text edit box in which you can type information. When the edit box has focus, a blinking insertion point appears. Learn how to use various edit controls in Delphi's VCL.

TLabel, TStaticText - Delphi Label Control Usage, Tips and Tricks
Label controls display text. You place a label on a form when you need to identify or annotate another component such as an edit box or when you want to include text on a form. The standard label component, TLabel, is a non-windowed control (no Handle), so it cannot receive focus. TStaticText has a handle. Learn how to use various label controls in Delphi's VCL.

TListBox - Delphi Usage Examples, Tips and Tricks
Delphi's TListBox displays a collection of items in a scrollable list that users can select, add, or delete. Learn how to use the list box control in Delphi programs.

TListView - Delphi Usage Examples, Tips and Tricks
The TListView Delphi control displays a list of items in a fashion similar to how Windows Explorer displays files and folders. Items can be displayed in columns with column headers and sub-items, or vertically or horizontally, with small or large icons. Learn how to use the list view control in Delphi programs.

TMemo, TRichEdit - Delphi Usage Examples, Tips and Tricks
Delphi's TMemo and TRichEdit controls handle multiple lines of text. TMemo is an edit box that handles multiple lines of text. TRichEdit is a memo control that supports rich text formatting. Learn how to use various multi-line text controls in Delphi's VCL.

TMouse - Delphi Usage Examples, Tips and Tricks
The TMouse Delphi object surfaces information about the mouse and specifies how the application responds to mouse messages. Using the global Mouse variable, which is a TMouse object, you can get information about the mouse.

TPageControl - Delphi Usage Examples, Tips and Tricks
Delphi's page control, TPageControl, is a page set suitable for multipage dialog boxes. A page control displays multiple overlapping pages that are TTabSheet objects. A page is selected in the user interface by clicking a tab on top of the control. Learn how to use the page control in Delphi programs.

TProgressBar - Delphi Usage Examples, Tips and Tricks
When your application performs a time-consuming operation, you can use a progress bar, the TProgressBar Delphi control, to show how much of the task is completed. Learn how to use the progress bar control in Delphi programs.

TRadioButton, TCheckBox - Delphi Usage Examples, Tips and Tricks
Delphi's TCheckBox is a button like control with on / off options. TRadioButton present a set of mutually exclusive choices - only one radio button in a set can be selected at a time. Learn how to use check box and radio button controls in Delphi's VCL.

TStatusBar - Delphi Usage Examples, Tips and Tricks
Delphi's TStatusBar control displays a row of panels, usually aligned at the bottom of a form. Status bar can be used to display various

TTreeView - Delphi Usage Examples, Tips and Tricks
Delphi's tree view control, TTreeView, displays items in an indented outline - a hierarchical view of items. You can include icons with items' text labels and display different icons to indicate whether a node is expanded or collapsed. Learn how to use the tree view control in Delphi programs.

Creating and enhancing VCL components
Articles, tips, techniques on Delphi components writing. Plus free code Delphi custom components.

- By Category
An index of categories in the

Advanced Delphi Windows / Shell / API / Graphics / OLE Programming
A simple understanding of Delphi is fine when you create applications for home use. Once you start building real-world applications you'll start looking for ways to solve more complex tasks - and Delphi will have all the answers!

About Delphi Programming Tips - 2004
Delphi tips from the free About Delphi Programming newslette, year 2004.

OLE / COM / DCOM / Automation / ActiveX - Delphi knowledge base
Delphi COM/OLE/ActiveX programming articles, papers, tips, techniques and hints.

Learn Delphi for .NET
Articles and technical information that will help you start developing with (and master) Delphi for .NET. Find out about the new IDE, Ado.Net, Asp.Net, ECO, IL, aspx, XML Web Services, msil, ...

Essential Delphi Tools, Utilities and Resources
Various development tools and utilities for Delphi, to help you code better and faster.

Game Programming
Create games using Delphi. Delphi Games programming resources, tools, components, free code apps and more.

Delphi Graphics Programming
Delphi Graphics Programming knowledge base - articles, tutorials, tips and techniques.

Top Picks - Delphi Tools and Components
What are the best Delphi related tools? What component should you buy? Is this VCL/CLX/VCL.NET library what you really need?

Return Multiple Values From a Delphi Function
A Delphi function is a routine returning a value. A single value? Yes, No. No, a Delphi function can return multiple values and there are different ways how to achieve this goal. Either rely on VAR (by-reference) parameters or return a record, or something even more complex...

Using TDictionary - Hash Tables in Delphi
Introduced in Delphi 2009, the TDictionary class, defined in Generics.Collections unit, represents a generic hash table type collection of key-value pairs. In Delphi, the TDictionary is defined as a hash table. Hash tables represents a collection of key-and-value pairs that are organized based on the hash code of the key. Hash tables are optimized for lookups (speed). When a key-value pair is added to a hash table, the hash of the key is computed and stored along with the added pair.

Reposition A MessageDlg To Your (Delphi Application) Main Form
A custom MessageDlgPos function you can use in your Delphi applications to decide if you want to center the dialog on your main form, owner form, screen center and so on simply by passing a particular type variable.

Understanding Delphi Class (and Record) Helpers
A feature of the Delphi language added some years ago (way back in in Delphi 2005) called

Delphi Game Development Scene
If we look at the Delphi history, it appears that every new version of Delphi has always been introduced using slogans like

Virtual Tree View - Delphi 3rd Party Open Source Component
The Virtual TreeView, initially being developed by Mike Lischke and now being maintained as an open source project on Google Code is a must-use control if you are up to working with whatever you could call

Virtual Tree View - How To Install
How to install Virtual TreeView package into your Delphi / RAD Studio IDE

Virtual TreeView - "Hello World" Example
Virtual TreeView - exploring the

Debug vs. Release In Delphi Build Configurations 3/3
The Debug build configuration, in Delphi, extends Base by disabling optimization and enabling debugging, as well as setting specific syntax options. Let's see what specific options are set for the Delphi compiler to produce a release build.

Debug vs. Release In Delphi Build Configurations 1/3
The Project Manager window in your Delphi (RAD Studio) IDE displays and organizes the contents of your current project group and any project it contains. The Build Configurations section will list various build configurations you have for your project. Since you can activate each of the build configurations you see in the Project Manager, then build your project producing a different executable file, the question is what is the difference between Debug and Release in Delphi?

Debug vs. Release In Delphi Build Configurations 2/3
The Debug build configuration, in Delphi, extends Base by disabling optimization and enabling debugging, as well as setting specific syntax options. Let's see what specific options are set for the Delphi compiler to produce a debug build.

Delphi Tips 2011
Delphi tips from the free About Delphi Programming newsletter, year 2011.

Two Applications In One Delphi Program - Part 2 / 3
The option to have different build configurations for your Delphi program allows you to have two (or more) different applications (executable files) being produced by the compiler/linker. For this purpose you would use a feature called conditional compilation. Here's how a special conditional symbol alters your application - same code base.

Two Applications In One Delphi Program - Part 2 / 4
The option to have different build configurations for your Delphi program allows you to have two (or more) different applications (executable files) being produced by the compiler/linker. For this purpose you would use a feature called conditional compilation. Add different forms to a project depending on the conditional symbol compilation.

Two Applications In One Delphi Program - Part 2 / 5
The option to have different build configurations for your Delphi program allows you to have two (or more) different applications (executable files) being produced by the compiler/linker. For this purpose you would use a feature called conditional compilation. Two applications (executable names) in one Delphi pogram / project - using post-build events.

About Delphi Programming Tips - 1999
Delphi tips from the free About Delphi Programming newslette, year 1999.

About Delphi Programming Tips - 2003
Delphi tips from the free About Delphi Programming newslette, year 2003.

About Delphi Programming Tips - 2005
Delphi tips from the free About Delphi Programming newslette, year 2005.

About Delphi Programming Tips - 2008
Delphi tips from the free About Delphi Programming newsletter, year 2008.

DelphiX / DirectX
DirectX programming in Delphi. Tutorials, code, components and more.

Icons and Glyphs for Delphi Programs: Menus, Toolbars and Buttons
Various icons, glyphs and small pictures to use in Delphi applications.

OLE Automation using Delphi
Using object linking and embedding to control Windows applications with Delphi.

Handling picture file formats from Delphi
Working with various picture file formats from Delphi. Look for information on ICO, GIF, JPEG, BMP, PNG...

Borland Kylix tutorial series
Borland Kylix tutorial series - from

OpenGL programming with Delphi
Learn about projection, illumination, construction of surfaces from polygons, and animation with Delphi and OpenGL - the essential game development 2D/3D library.

BLOBs in Delphi DB programming
Working with BLOB (Binary Large Object) database fields with Delphi.

BDE Delphi Programming
Articles on integrating the BDE with Delphi to create robust database applications.

Interbase / Firebird with Delphi
Programming with Delphi - articles, tutorials, whitepapers. Focus on Interbase and Firebird databases.

MySQL with Delphi
A collection of tutorials and articles explaining accessing data from MySQL database using Delphi

Coding Windows Screen Savers with Delphi.
Coding Windows Screen Savers with Delphi.

MS SQL Server / MSDE / Access - Delphi knowledge base
Programming with Delphi - articles, tutorials, whitepapers, tips and tricks. Focus on MS SQL Server / MSDE / Access databases.

Two Applications In One Delphi Program - Part 2 / 2
The option to have different build configurations for your Delphi program allows you to have two (or more) different applications (executable files) being produced by the compiler/linker. For this purpose you would use a feature called conditional compilation. Here's how to specify a custom conditional symbol for a trial build configuration.

ADO.NET tutorials and articles
Learn about accessing data in .NET using Delphi. Look for tutorials and articles on Data command and DataReader, working with DataSets and DataTables, Reading and writing XML with ADO.NET, etc.

Asp.Net tutorials, articles and free code projects
Start creating real world Web applications with Delphi and asp.net: learn about WebForms, user controls, html, JavaScript, xml web services...

Before You Buy
Important tips and resources you should check before buying various Delphi related products.

Fun, Info and Humor
Work, work and always work. Let's have a little fun.

Networking with Delphi
Working with network connections from Delphi.

Product Reviews
Reviews of selected Delphi related products. Some reviews are extensive, some are shorter tool or VCL profiles designed to aid and inform.

VCL for .NET
VCL for .NET is an evolution and continuation of the VCL architecture that stands toe to toe with MS's WinForms architecture. Find out why and when to use VCL.Net to build .Net Delphi applications.

Jobs and Offers
Make all your hard work pay off. Find yourself a job in the world of Delphi programming.

Windows Shell exposed by Delphi
Tray icons, shortcuts, system dialogs and other secrets of the Windows Shell.

Multimedia (animation, sound) programming with Delphi - knowledge base
Delphi Multimedia Programming knowledge base - articles, tutorials, tips and techniques.

Using Database Components (DB Aware Controls) in Delphi
How to efficiently use various data aware component in Delphi. Look for information on TTable, TQuery, TDBGrid, TDBNavigator ...

Developing (and consuming) Web Services with Delphi
Learn about building applications that can be published, located, and invoked across the Internet.

Two Applications In One Delphi Program (Using Conditional Compilation) - Part 2 / 1
The option to have different build configurations for your Delphi program allows you to have two (or more) different applications (executable files) being produced by the compiler/linker. For this purpose you would use a feature called conditional compilation. Here's how to create an extension to the Release build configuration: the Trial build.

Creating flat (non-relational) databases with no database components
Creating flat (non-relational) databases with no database components. A Beginner's Guide to Delphi Programming: Chapter 16. Delphi Personal edition does not offer database support. In this chapter, you will find out how to create your own *flat* database and store any kind of data - all without a single data aware component.

Debugging Techniques in Delphi and Bug Prevention
Even if you wrote a program in a disciplined, well-structured, careful manner, you will probably still need to debug it to find some bugs. Delphi offers great debugging tools and when you know how to use them, you will surely save a lot of time finding the exact reason of the problem. In this small tutorial I will explain some nice features in Delphi which will help you to debug your programs. Because it is better to avoid bugs, I will also give a few tips to make better programs.

The Traps of the If-Then-Else Statement in Delphi Code
In Delphi, the if statement is used to test for a condition and then execute sections of code based on whether that condition is True or False. Watchout for If Then Else traps if you are a beginner using nested if statements.

Understanding Decisions in Delphi Programming
If you want to control the flow of code execution depending on what the program has already done or what it has just encountered you need to use one of the two Delphi Pascal branching statements: if statements and case statements. Learn how.

Flavors of Delphi - Understand Delphi Versions and Pick your Delphi of Choice
Interested in becoming a programmer? Want to learn Delphi? Confused about various Delphi version? This article helps you understand the flavors of Delphi and helps you pick your Delphi of choice

Understanding Typed Constants in Delphi
How to implement persistent values between function calls in Delphi programming.

Learning Object Oriented Programming With Delphi
Free online Borland Delphi OOP Course: Chapter Overview.

How to Display a Progress Bar for a TBatchMove Operation (in Delphi applications)
Learn how to use the TBDECallback object to display a progress bar for a lengthy TBatchMove operation.

MessageDlg - Delphi Function Upon Window Closure
Answer the following question: MessageDlg is called and displays Yes and No buttons. User closes the dialog by clicking on the X button in the title bar. What is the result of the function? Here's a custom implementation of the MessageDlg Delphi function named MessageDlgEx. MessageDlgEx allows you to specify the default / focused button but also what is the result of closing the dialog by clicking on the X button.

Create a Database Using Delphi's "File Of" Typed Files
Working with binary files from Delphi. Use Delphi to manage writing, reading and updating your own types of files.

Delphi Contest: Create Fancy Delphi Applications for Fame and Glory
If you are like me, you like experimenting - creating pieces of Delphi code just to learn something new and create something interesting. If nothing else, to amaze your coworkers / family / yourself. Here's a Delphi contest for you: create a fancy Delphi application or just a piece of Delphi code! For Fame and Glory.

Fancy Delphi Application Contest - FDA(C) Entries 1-20
If you are like me, you like experimenting - creating pieces of Delphi code just to learn something new and create something interesting. Here's a list of the current Fancy Delphi Application Contest entries. Download Delphi source, download executable, rate .. have fun! Page 2.

Fancy Delphi Application Contest - FDA(C) Entries 21 - 30
If you are like me, you like experimenting - creating pieces of Delphi code just to learn something new and create something interesting. Here's a list of the current Fancy Delphi Application Contest entries. Download Delphi source, download executable, rate .. have fun! Page 3.

Fancy Delphi Application Contest - FDA(C) Entries 31 - 40
If you are like me, you like experimenting - creating pieces of Delphi code just to learn something new and create something interesting. Here's a list of the current Fancy Delphi Application Contest entries. Download Delphi source, download executable, rate .. have fun! Page 4.

Fancy Delphi Application Contest - FDA(C) Entries 41 - 50
If you are like me, you like experimenting - creating pieces of Delphi code just to learn something new and create something interesting. Here's a list of the current Fancy Delphi Application Contest entries. Download Delphi source, download executable, rate .. have fun! Page 5.

File Encryptor and Decryptor Application in Delphi
Looking for an easy way to encrypt and protect your data? How about one build with Delphi including full source code? Encryption is the process of converting a file into a format that cannot be read by the applications set up to open the file. To remove the encryption you decrypt.

Creating A Splash Screen In Delphi Applications
The most basic splash screen is just an image (more precisely a form with an image) that appears in the center of the desktop screen when the application is loading (and gets hidden when the application is ready for usage).

How to clear the graphics in a TImage Delphi control
If you need to clear the image contained in the TImage Delphi control, at run time, you'll find that *no* method exist for such a simple task...

Format XML Data Using Delphi Without doNodeAutoIndent
Delphi's TXmlDocument component can be used to either read (and process) an existing XML document or to construct a new, empty XML document. When using the TXMLDocument to create XML documents you might receive a nasty EOleException: This operation can not be performed with a Node of type PCDATA. The problem is in the doNodeAutoIndent option set. Here's how to have the XML formated without the doNodeAutoIndent, using the FormatXMLData function.

How to Focus a Specific Cell in a DBGrid Delphi Component
Here's a simple trick to set the input focus to a specific cell of a TDBGrid component. Given the DBGrid's active row and field name (or the column index) the cell receives the input focus and becomes active.

Working with GIF images in Delphi
Working with GIF images in Delphi. Need to display an animated GIF image in a Delphi application? Even though Delphi does not natively support GIF image files formats (like BMP or JPEG) there are a few great (free source) components available on the Net, which add the ability to display and manipulate GIF images at run as well as at design time to any Delphi application.

How to add Leading Zeroes to a Number (Delphi Format)
Here's how format a number to a string by adding an amount leading of zero's, in Delphi.

Delphi "problem": TForm.Create(?) Nil, Self or Application?
When creating Delphi objects dynamically, that inherit from TControl, such as a TForm (representing a window) in Delphi application, the constructor

Parse a Delimited String Into a String List (Delphi)
There are many times when you need to split a Delphi string into an array of strings by using a character as a separator. Delphi provides several methods to parse a string, but you might find that neither one does exactly what you need. Here's how to write a

Setting a Multi-Line Caption for a TLabel in Delphi
You *cannot* specify multi-line text for a TLabel at design-time, using Object Inspector. One trick to add more lines of text for a Caption property of a TLabel, at design time, is to edit the Form's .DFM file directly. Here's how.

UDP Makes a Difference (UDP vs. TCP)
Everybody is quite familiar with TCP. Most do know UDP and think its an inferior protocol, as it does not ensure that the data bytes sent will arrive at the other site. Thus, UDP imposes less network overhead than TCP and gives the programmer more freedom and more labor by forcing him to deal with the security of the data transport himself.

Use a Function as a Parameter in Another Function
Here's how to send a function (or a procedure) as a parameter to another function in Delphi.

Programmatically Download Web Documents Using Delphi
Learn how to programmatically download a web document from the Internet using Delphi and WinInet API.

How to Dynamically Add Items to a TPopUp Delphi Menu
How to add menu items to a Menu (or Popup menu) at run-time, how to respond to the OnClick event. Plus: how to extend the TMenuItem to hold custom string property.

Convert RGB to TColor or Get More TColor Values for Delphi
If you have values for red, green and blue intensities (a number from 0 to 256 - byte type), here's how to get the Delphi TColor value...

Store User and Application Data in the Correct Location
When in the need of storing some content related to your Delphi application on the user's hard disk, you should take care of the support for state separation of user data, user settings, and computer settings.

Protect your Delphi Software
This article is intended for those Delphi developers who want to know more about issues on protection from any unauthorized usage.

How to Convert Numbers From One Base to Another
Borland Delphi functions for converting Int to Bin, Int to Hex, Int to Roman and vice versa.

Simple HTML page Scraping with Delphi
The idea of this article is to show you the techniques used to download a page from the Internet, do some page scraping and finally present the information in more

Delphi Challenge: RemoveEmptyFolders - a Custom Delphi Function to Delete Empty Sub Folders
Your task is to code a custom Delphi function RemoveEmptyFolders. RemoveEmptyFolders takes 1 path names (directory) and should remove / delete all empty sub-folder at any (sub) level.

Set CheckBox.Checked Without the OnClick Event (Delphi)
The TCheckBox Delphi control displays a check box that can be on (checked) or off (unchecked). The Checked property specifies whether the check box is checked or not. When the user clicks the check box to change its Checked state, the OnClick event for the check box is fired. Here's how to disable the OnClick event when you programmatically change the Checked property.

How to Debug Delphi VCL Source Code
No matter how careful you are when writing code, your programs are likely to contain errors, or bugs, that prevent them from running the way you intended. Here's how to step into the VCL (and RTL) source code ...

HTTP POST Using Delphi and TWebBrowser
How to programmatically upload multiple files to an HTML form using the HTTP Post method - from Delphi.

Delete Multiple Selected Items in a TListBox Delphi Control
The TListBox Delphi control displays collection of strings in a scrollable list. By setting the MultiSelect property to true, the user can select more than one item at a time. Here's the code to delete multiple selected items in the list box Delphi control.

Handling Errors and Exceptions in Delphi Applications
Unfortunately, building applications includes coding. Regardless of how carefully you write/debug your program, it will be impossible to imagine every situation that can go wrong. Learn how to handle errors and exceptions in Delphi applications.

Using RTTI in Delphi
Delphi provided Runtime Type Information (RTTI) more than a decade ago. Yet even today many developers aren't fully aware of its risks and benefits. This article provides an overview of the RTTI usage in Delphi for Win32.

Implementing QuickSort Sorting Algorithm in Delphi
One of the common problems in programming is to sort an array of values in some order (ascending or descending). While there are many

Refresh a DBGrid Without Losing the Current Row Position
When DBGrid is used to display data from a dataset (query or table), by design, after you call Refresh method on a dataset (re-open) (for example, using a DBNavigator), the current row position will be reseted to zero (ok, first). This means that if a user has selected a row somewhere near the bottom of a DBGrid, after a Refresh, the active row will be changed to first :( Here's one answer to this problem...

Get the Size of a File in Bytes Using Delphi
When working with files and folders from a Delphi application you sometimes need to know what is the size of a file (in bytes). A custom function, FileSize function returns the size of a file in bytes, -1 if the file was not found.

How to Implement OnCreate Event for Delphi TFrame Object
A frame, like a form, is a container for other components. Frames can be nested within forms or other frames, and they can be saved on the Component palette for easy reuse. Once you start using frames, you'll note there's no OnCreate event you can use to initialize your frames. Here's how to mimic the OnCreate event for Delphi frames.

Append Formatted Lines Using SelText and SelStart
While you can create nice user interface

What is "var Form1:TForm1" in Delphi Form's Unit Interface section?
When you add a new form to a Delphi project, a form and its associated unit is included in the application. There's a global variable

Custom Drawing of TListView Control (Font, Colors, Graphics)
If you want to apply custom drawing (fonts, color, graphics) for each individual list item you can simply handle an event or two - and have a list view full of color and visually more attractive elements. The OnAdvancedCustomDrawItem event can be used to customize the drawing of individual items on the list view's canvas. Here's a quick Delphi example.

Defining an Interface / Implementing in Delphi
If you are up to creating a rock solid (OOP driven) Delphi application in a way that your code is maintainable, reusable, and flexible the OOP nature of Delphi will help you drive the first 70% of your route. Defining interfaces and implementing them will help with the remaining 30%.

Choosing the Best Font for your Delphi / Pascal Code
Having a readable, sharp, clean, crisp, nonospace font is a must if you do not want your eyes to suffer (and want more code per line)! A font you use must distinguish between similar characters, such as capital O letter and zero number (0) and the number 1, capital I, and lowercase l. Choose the best font for your Delphi / Pascal code.

How to Add Standard Context Menu to Delphi's TRichEdit
Delphi's implementation of the rich editor control (TRichEdit) does *not* expose the default context popup menu when the rich edit is right-clicked. Here's how to implement the default context popup for a rich edit control

Highlighting Delphi's DBGrid Row on Mouse Hover
What most Delphi developers are not aware of, is that you can even implement the OnMouseHover behavior to change the display (color, font, etc.) of the DBGRid's (data) row underneath the mouse - thus making it look like todays web driven interfaces.

Alternate Row Color in Delphi's DBGrid
You've seen this surely on web pages. Alternating table row colors means displaying the first record in one color and the second record in another color and continue to alternate the color of each row displayed. Here's the OnDrawColumnCell event handler for a Delphi DBGrid control to color every second row in a different color.

Custom Component Development in Delphi
Everything about creating custom components in Delphi. The ultimate source.

Custom Component Development
Everything about creating custom components in Delphi. The ultimate source. Page 2.

Group Items in Delphi's TListView Control
The TListView Delphi control displays and manages a list of items, displayed in columns, vertically or horizontally, with small or large icons. If you are using Delphi 2007, Delphi 7 or any other previous version, you can also have grouping (with expand, collapse) functionality in the TListView control. Here's one implementation idea.

Delphi TListView Control: On Item Click / Double Click
Unfortunately, if you need to know what list view item was clicked or double clicked you cannot simply handle the OnClick / OnDblClick events to get the clicked item. You need to call the GetHitTestInfoAt function and make sure the click event occurred over an actual item. Here's how.

Drawing a TComboBox: Color Pick List, Font Pick List
As with menus (menu items), an application can create an owner-drawn combo box to take responsibility for painting list items. An owner-drawn combo box can list/show information other than text strings - usually some graphical elements. Let's see how you can do it in Delphi.

Implement a Button with a Drop Down Menu in Delphi
A

Create Custom Windows Explorer with Delphi
The Win 3.1 Delphi components palette group includes several components that enable us to build our own custom File Open or File Save dialog box. The components are TFileListBox, TDirectoryListBox, TDriveComboBox, and TFilterComboBox. Let's see how we can build a simple File Navigating dialog box with these components and just a few lines of code.

Monitoring Mouse Activity in Delphi applications
Is the mouse over a component? Was a mouse button pressed? Which button was it? Did the user release a button, which one? Exactly where inside the form is the mouse? Did the user move the mouse out of the form into another form?

Understanding Owner Drawing in Delphi
Owner Drawing - an excellent way to improve the look and feel of your Delphi application by changing the control's standard appearance.

Disable Container Child Controls When Property Changes
When an edit box or a label is placed on a panel, in a Delphi application, if the Enabled property for the panel is set to False, the label and the edit box will *not* appear grayed - as you would expect! Here's a quick fix.