Book Image

Expert Delphi - Second Edition

By : Marco Cantù, Paweł Głowacki
Book Image

Expert Delphi - Second Edition

By: Marco Cantù, Paweł Głowacki

Overview of this book

Master Delphi, the most powerful Object Pascal IDE and versatile component library for cross-platform native app development, by harnessing its capabilities for building natively compiled, blazingly fast apps for all major platforms, including Android, iOS, Windows, Mac, and Linux. Expert Delphi begins with a quick overview of Delphi, helping you get acquainted with the IDE and the Object Pascal language. The book then quickly progresses to more advanced concepts, followed by the architecture of applications and the FireMonkey library, guiding you through building server-side services, parallel programming, and database access. Toward the end, you’ll learn how to integrate your app with various web services and deploy them effectively. By the end of this book, you’ll be adept at building powerful, cross-platform, native apps for iOS, Android, Windows, and macOS—all from a single code base.
Table of Contents (21 chapters)
Free Chapter
1
Part 1: Building Blocks
6
Part 2: Going Mobile
12
Part 3: From Data to Services
19
Index

Get moving with timers

Let’s go a step further – instead of having a static scene, we’ll add some animation. It is a normal thing for the Sun to ascend in the morning. To achieve the effect of sunrise, the form must be repainted. We are going to change the Y coordinate that is used for painting the Sun’s circle and rays. To do this, we’ll add a private member called FSunPosY: double to our TFormSun class that will store the current vertical position of the Sun.

The simplest way to change our scene over time is with the TTimer component. To do so, drop a timer on the form. It has only one event, OnTimer. The frequency of this event is controlled by the Interval property, which specifies the number of milliseconds between firing the OnTimer event. The default value of the Interval property is 1000, which means that the timer fires its event every second. For a smooth animation, this is too slow. Change the Interval property to 20 and double-click...