1. Technology

Delphi Blog


Follow me on:

Signing Off. So Long, and Thanks for All The Good Times!

Thursday January 3, 2013
Dear delphi.about.com web site visitors, readers and friends who followed my work as the Delphi Programming Guide for the About.com network, the time has come for me to move on to new endeavours.

After 15 great years I'm leaving About.com. I've started working as the Delphi Programming Guide in 1998 (days of Delphi 3) and have continued publishing tutorials and articles geared at beginner and advanced Delphi developers.

NO, I am not leaving Delphi.

In fact, I'm spending much more time in the Delphi (Rad Studio) IDE these days - and I am hoping you are in the same position - to have your working hours filled with joy of coding in the best development environment.

One huge "Thank YOU!" to all the known and unknown Delphi developers who have followed my work here and have send hundreds of emails supporting me for the past 15 years.

The About.com Delphi Programming web site will NOT be closed, all the content will be available in the future so nothing would be lost :) After all, I have found myself many times searching for a solution to a Delphi problem I have, to finally land on my own article written years ago :)

What's more, I think About.com might start looking for a new Delphi Programming Guide, so if you think you have the passion and the knowledge, feel free and invited to apply.

That's all folks. Over and Out.

This is not my last (if it can be called like this) Delphi related blog post / article. I'll see to start a new blog in the near future and continue publishing Delphi programming related stuff. I am and will be using Delphi every day, there's always something to be implemented, some problem to be solved, some new feature to be included - any why not share the knowledge gained with others.

- Žarko Gajić, Embarcadero Delphi MVP.

Delphi Programming Almanacs: 1998. - 2012. Something for Every Delphi Developer: Beginner or a Guru!

Thursday December 27, 2012

in Delphi Almanacs :: According to Wikipedia, an almanac is an annual publication containing tabular information in a particular field or fields often arranged according to the calendar.

A Delphi Programming Almanac would then be an annual reference e-book (?) composed of articles, tutorials, tips and tricks relating to programming in Delphi.

A wannabe Delphi programmer, a Delphi beginner or a Delphi guru / expert? 15 years of Delphi programming content available for you (for free)!

1998. - 2012. Delphi Programming by Zarko Gajic

An almanac for a year lists only articles, tips and resources that were originally published during the selected year. All materials written by Zarko Gajic, some contributed by other Delphi developers.

Reverse Engineering (Decompiling) Delphi Applications

Monday December 24, 2012
in Advanced Delphi :: Simply speaking, decompilation is the inverse of compilation: translating an executable file into a higher level language. Suppose you lose your Delphi project's source and you only have the executable file: reverse engineering (decompilation) is useful if the original sources are not available.
Hm, "sources not available", does this mean that we can decompile other people's Delphi projects? Well, yes and no..

Read the full article to learn how to Decompile a Delphi application.


Speed and Size: Top 10 Delphi Programming Tricks

Friday December 21, 2012
LANGUAGE TIPS :: In many case the Delphi compiler will take care of the optimization. But that's just limited to aligning the code for pipelines, and some other small tweaks to the code. There is still much to be gained by taking into account how a computer works, and adapting your algorithm to that.

Read the full article to learn a few useful tips to make your Delphi programs run faster.


Listening to the Clipboard: Delphi Clipboard Spy with Custom Clipboard Formats

Monday December 17, 2012
in Advanced Delphi :: Clipboard stores information in multiple formats so we can transfer data between applications that use different formats. When reading information from the clipboard with Delphi's TClipboard class, we are limited to standard clipboard formats: text, pictures and metafiles.

Suppose we have two different Delphi applications running, what do you say about defining custom clipboard format in order to send and receive data between those two (Delphi) programs?

Read the full article to learn how to dive into the Clipboard change notifications using Delphi and create your own Clipboard formats.


Custom Drawing a TComboBox: Color Pick List, Font Pick List

Thursday December 13, 2012
in using VCL :: 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.

To demonstrate owner-drawing with combo boxes you'll create a combo box full of colors (two variations) and a combo with true-type fonts showing the actual image of the font.

Read the full article to learn about Drawing a TComboBox: Use Owner Drawing to create a Color Pick List and a Font Pick List.

Related: Owner Drawing Popup Menus | Implementing OnMouseOver for Items in a TComboBox | Professional Looking Grids with Custom Drawing

Have a Delphi Function Return Multiple Results / Values

Tuesday December 11, 2012
in For Beginners :: A return value from a function is defined by the return type. I guess that in most cases you would write a function to return a single value that would be an integer, string, boolean or some other simple type, also return types could be an array, a string list, an instance of a custom object or alike. Note that even if your function returns a string list (a collection of strings) it still returns a single value: one instance of the string list.

Read the full article to learn how to Return Multiple Values From A Delphi Function


Intercepting Keyboard Input with Delphi - Implementing a Keyboard Hook

Monday December 10, 2012
in Advanced Delphi :: Consider for a moment creation of some fast arcade game. All the graphics is displayed, let's say, in a TPainBox. TPaintBox is unable to receive the input focus - no events are fired when the user presses a key; we cannot intercept cursor keys to move our battle ship. Delphi help!

Read the full article to learn about Intercepting Keyboard Input with Delphi - Implementing a Keyboard Hook.

Related How to Hook the Mouse to Catch Events Outside of your application | Disable Mouse and Keyboard from Delphi code | Sending messages to non-windowed applications

Understanding Owner Drawing in Delphi

Friday December 7, 2012
in Advanced Delphi :: I guess we all like the idea of graphics displayed in the "Start" menu of Windows XX. Have you ever wondered is it possible to do custom control drawing with Delphi?

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

Read the full article and learn about owner drawing in Delphi.

Related : How to Mimic Office 2007 Rich Menus using Owner Drawn TMenuItems | Graphical Combos | Professional Looking Grids with Custom Drawing

Understanding and Processing Keyboard events in Delphi

Tuesday December 4, 2012
in Delphi Language :: 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.

Read the full article to get a better Understanding and Processing Keyboard events in Delphi

Related : Setting up application wide hot key (keyboard short cut) | Translate a Virtual Key Code to a Character in Delphi Keyboard Event Handler | Programmatically Get and Set the State of the CapsLock and NumLock Keys

©2014 About.com. All rights reserved.