FMX Pinch and Zoom Tip

Recently when building a mobile app in FMX I had an issue getting pinch and zoom working. The recommended approach to mobile development in FMX is to have a single Form, and multiple views (frames). These views are switched in and out as required. This works very well. However, no matter what I tried I […]

Temperaments in FMX

In the programming world the first thing most of us do when trying out a new technology is to write a hello world application. It seems Temperaments has become my hello world app for experimenting with mobile applications. I have two versions in the Play Store already, one written in Xamarin (2015), and another in […]

Setting the TVertScrollBox Position

Recently in FMX, I was trying to reset the scrolling position of the TVertScrollBox to the top when re-showing a frame: The solution is to use the ScrollBy function. You have to specify how many pixels you would like to move backwards from the current position. For example, if my current Y position is 100 […]

Delphi in VS Code

Note: This post was before Rad Studio 11. I believe there is an easier way now. The Delphi Extension Pack is an excellent extension for Visual Studio Code. It installs a bunch of useful components to help make the Delphi developer right at home. It’s really neat, you even get helpful error information if compilation […]

Broken Code Insight in 10.4.2

Delphi 10.4.2 delivered important fixes to the LSP and Code Insight. In general, everything is working well for me. However, I can still produce the dreaded red squiggles: As you can see compilation was successful, but Code Insight and Structure View are broken. In this case, the problem is a result of updating the Library […]

FMX Resources

Language Reference Here are a list of resources to help a developer get started with FMX development. Some of the resources are free, others are links to books on Amazon. Please keep an eye on the Packtpub publisher’s website, they often have $5 specials, particularly around major holidays. The first resource you should download is […]

When Const is Not Const

Recently on the Delphi Developer FB Group, this interesting post caused quite the confusion: Enter the Debugger With the const modifier the memory addresses are the same (pass by reference): p1: TPoint $427CECp2: TPoint $427CEC Without const, they are different (pass by value): p1: TPoint $427CECp2: TPoint $19FF28 The global variable p1 has a value […]

Deleaker – Delphi Leak Profiler

Introduction In computer science, a memory leak is a type of resource leak that occurs when a computer program incorrectly manages memory allocations. One of the more challenging aspects of developing in a language without automatic memory management (i.e. a garbage collector or a referencing counting mechanism) is ensuring that your application does not leak […]

Turkey Embraces Delphi

Many people are not aware that in 2017 Delphi was selected as a primary development tool for all South African high schools: “Delphi is a great language that helps our students not only learn programming, but also extend their analytical skills for many other subjects. For us, the ability to standardise on a consistent, compatible […]

WMI in Delphi and VBScript

Purpose The purpose of this article is to provide a very basic introduction to WMI for Delphi developers who are unfamiliar with it. It contains example code to query WMI using Delphi. What is WMI? WMI (Windows Management Instrumentation) is a technological invention of Microsoft, whose purpose is to take care of the different operational […]