Crash Course Delphi, part 2: forms, edits, buttons
In this lesson we'll create a simplified version of EuroCC, the application that was introduced in lesson 1.
For now, the accent will not be on what the program does, but rather on how to start a project, how to save the files, add components, and so on. But very soon, we'll continue in a higher gear.
- If you haven't done so yet, download euroen01.zip to \DelphiLa.
Hold your horses! Don't unzip it now: every project will get it's own directory, and it is best to keep all the original
files in \DelphiLa.
- Create a new directory: \DelphiLa\EuroEN01. Of course, you can choose other names for your directories and projects.
But if you use the structure that I propose here, it will be a lot easier to understand each other.
- "Unzip" euroen01.zip to directory \DelphiLa\EuroEN01. Check if you've got the files euroen01.dpr, euroform.dfm and
Starting at the end
As usual, we'll start with the end: how should our simplified EuroCC look like and what should it do?
- Start Delphi and open the project euroen01.dpr through the File menu and
- Compile the application. If you have forgotten how to do that, have a look at
- As with every succesful compilation, Delphi will start the application in the "environment" of the
- Just play around with the program. Notice that Delphi gives an error message and that it
pauses the program, if you enter an invalid value and then click a button. To continue, click
Run in the Run menu, or press F9. In the message-box that appears, click OK. Afterwards you do
not get a second error message, because in this simple version of EuroCC we
are not checking for a valid input (compare this behaviour with lesson 1).
- Stop the application.
In the File menu, click Close All.
Delete all files from \DelphiLa\EuroEN01, using your favorite file manager (Windows Explorer,...).
Your Turn !
- In the File menu, select New, next select VCL Forms Application - Delphi For Win32.
(Note: in Delphi 7 and older, select "New Application")
- Delphi will start a new project:
- Delphi's title bar shows the name of the new project: Project1.
This means that Delphi created a dpr-file (project file) called Project1.dpr.
Note: if you start several new projects one after the other during the same session, the second
project gets the name Project2.dpr, the next one will be Project3,...
Delphi consequently gives names along these lines to new files and new components.
- Notice the window with the title Form1 (in newer versions of Delphi, the Form window is
completely hidden "behind" the Editor window).
That window (form) is the basis for your project.
Delphi-applications are based on Forms. Every application has one or more
A Form is a component in the shape of a window. That's why Bill called it "Windows"...
On the form you put other components, such as buttons, Edit-boxes, Radiobuttons,
ListBoxes, ComboBoxes and other well known Windows-creatures.
- We also have the Editor window. That's where the source code
can be viewed and edited. The source code is the result of the cooperation between Delphi and
yourself: for every unit, Delphi creates a template that you can complete.
- Let's have a look at the Editor window:
Unit1 is the name of the Unit that goes with Form1. Delphi created the file Unit1.pas,
containing the source code for Form1, the main form of the application.
For the moment, all these files only exist in the RAM of your computer. You have to save them to
- Open the File menu and click Save All.
In the dialog Save Unit1 as, select directory \DelphiLa\EuroEN01. Enter euroform
as the file name. Delphi saves the text of the unit in file euroform.pas. The other data for
Form1 are saved automatically in euroform.dfm.
- In the next dialog, Save Project1 As, the right directory is already selected. Enter euroen01 as file name.
Delphi saves the composition-data of the project as
euroen01.dpr (this file contains the names of the units and the forms that you created,
the names of other units used by the project, and so on).
Notice that the title bar of the Editor window has changed to euroform.pas. But where is the
project file, the dpr-file? It isn't visible at this moment, but that isn't important anyhow.
Don't change anything in dpr-files if you do not know exactly what you are doing, better leave the
management of the project to Delphi.
Files and file naming
It is best to save all files of a new project as soon as possible. That way, you won't experience
nasty surprises as lost projects (what was that name again?), or an existing project being overwritten by
a new one (and that's a lot worse...)
- You are completely free in naming the first unit (in our case: the only unit).
- Of course, all next units have to be given different names.
- The name of the project file must be different from all unit-names.
In our case, the name euroen01 is not allowed for both the unit and the project, although
the file extensions are different!
- Out of the project name, Delphi creates the name for the compiled executable. In our case
this will be euroen01.exe. Therefore it is worthwile thinking of a suitable name BEFORE
starting a project.
Analyzing before you start is half of the game.
We know that 1 Euro equals 40.3399 BEF (Belgian frank). BTW: the same is true for the Luxemburg frank).
Clicking a button should convert the value in the edit-box to another currency. Also the name of that
currency should be shown.
Components for this application: 1 edit-box for data entry, 2 buttons (one for the conversion Euro - Belgian franks, one for the reverse), 6 labels (1 for the name of the starting currency, 1 for the text
"equals", 2 for the results, 2 for the currency names).
Adding the Components
The next steps explain how to add the components to the form:
- Bring the form window to the front. Tip: you also can press F 12, which switches
between the "unit" in the editor and the "form".
Probably you will see a raster on the form, facilitating the alignment of the components.
For reasons of clarity I omitted this raster in the pictures. On my PC, I switched off the
form-raster: about everything can be personalized in Delphi. But don't change too much if you only
just started with Delphi, because it's quite complicated to restore the original settings.
In the worst case scenario, you would have to reinstall Delphi :-(((
- In the component palette, click the icon of the Edit component. It is on the standard page
of the palette:
- Click somewhere in the form. An Edit-box appears on the form, with the text
Edit1 (this is the name of the component).
- Drag component Edit1 to the upper left-hand corner of Form1, right below the title bar.
- Select the Label component from the component palette.
- Move the cursor somewhere right of Edit1 and click: Label1 is placed on the form.
- Once again, select the Label from the component palette. Then, click to the right of Label1.
Label 2 is born.
- Select the Button component from the component palette (also on the standard page).
add it to the form, somewhere below the Edit-box. A button with the name Button1 appears.
- Below Button1, add a second button to the form.
- Add two Labels to the right of Button1 (Label3 and Label4). Add two more labels to the right
of Button2 (Label5 and Label6). By now, your form should look similar to this:
- Drag the components until Form1 more or less matches the picture shown above.
Probably your form is a lot bigger than the one that I show here. Size the form by dragging
the bottom left corner of the window's frame, just as you would do with any other window.
- Time to save your work: in the File menu, select Save All.
- Let's test. In the Run menu, select Run. Or press key F9.
Delphi will compile and run your program.
The program doesn't seem to do anything, but make no mistake: this is a full blown Windows application!
You can size and move the window, enter text in the Edit, click the buttons,...
- Stop the application.
|You can freely download lessons
1 to 3 of our Crash Course Delphi and the associated source code files.
Members of the DelphiLand Club can
also download the other lessons and our specific tutorials, including all fully commented
source code files.