delphi l01 intro

Post on 01-Jul-2015

792 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Mohammad Shakermohammadshakergtr.wordpress.com

Intro to Event-driven Programming and Forms with Delphi@ZGTRShaker

2010, 2011, 2012

Intro to Event-driven Programming and Forms with Delphi

L01 - Introduction

About the Course

• Delphi 2007-2009• How to think like a programmer• Test Questions• You need to try your self, otherwise it won’t work out with

you (practice, practice, practice)

Course plan

• Introduction to Delphi• Introduction to IDE & Event Driven Programming• Start\Save\Open a project• Form design (design\runtime )• Delphi Components • Input Handling• Event handling• Files • Drawing (Canvas, Timer, etc.)• Instantiate Controls at Runtime

Delphi History• ‘ALGOL’* the first high-level language • ‘ALGOL’* > Pascal ‘Niklaus Wirth’**• the original definition of Pascal was published in 1971. • Pascal becomes the ‘FORMAL’ programming language.• Turbo Pascal 1.0 (November 1983) • Delphi in 1995 Was introduced for ‘Visual Programming’

• *ALGOL: Algorithmic language• ** Niklaus Wirth: (b. February 15, 1934) is a Swiss computer scientist, best

known for designing Pascal programming language, and for pioneering several classic topics in software engineering. In 1984 he won the Turing Award for developing a sequence of innovative computer languages.

Delphi History

• Pascal > Delphi• Borland > Pascal > Compiler > Delphi

Differences

• Interface: from “Console” to “Visual”.• All Applications need Visual Interaction.• IDE: (Integrated Development Environment)

Delphi Preferences & features

• OOP (Object Oriented Programming)• Applications: are build in the form of ‘forms’.• Components • Api functions ‘in Windows’.• 10 times faster compiler in comparison to other programming

languages.– Executive building files (exe) forms.– No DLL libraries like other programming languages (Dynamic Link

Library)– Database compatibility.

Now, let’s sneak peek

InstallCodeGear Delphi

What’s for today?

• Design time\Execution time (runtime)• Event-Driven Programming• Your first Project• Forms, Buttons• ShowMessage

Design time\Executing time

Programs executing

• Procedural Programming:– Sequential

• “Event-Driven” Programming:– Event

File Menu

• New > VCL forms Applications • open • Save

Open\Save a Project

• When saved.– first, “UNIT” is being saved – Then, the “PROJECT”

• File > Save as (Pas file is saved)• File > Save project as (dpr is saved)• “exe.” file is formed in running time.

Object inspector

Object inspector

• Properties: like width, color, etc.• Events: like pressing buttons, moving mouse, etc.

Properties

Events

Common Properties for all components

• Width, Height.• Top, left.• ‘Hint’ adding & showhint.• Visible.• Enabled.• Font.• Color.

Common Events for all components

• Onclick• OnDoubleClick• OnMouseMove• OnDragDrop• OnCreate • OnClose• Rest of them

Note that

• All the above properties & events can be modified at design time or runtime.

Event Handling Live Example

Tool palette.. components

Tabs

FormsWindows Applications forms

Every “form” has a corresponding “unit”

Forms properties

• All the following properties are ‘boolean’s:– BiSystemMenu:

• All three buttons disappear.

– BiMinimize: • to taskbar minimization.

– BiMaximize: • resize button.

– BiHelp: • ’?’ button.

• Position: the place the form will appear on the screen. • Icon: the style of the form’s icon.

– You can browse it from your PC images & pics.

Forms events

• OnClose• OnMouseClick• OnHold• OnCreate• OnResize• OnMouseWheelUp

Buttons

• Adding a button to our project

Button properties• Name: the one we use in code (we can’t write in Arabic here.) • Caption: the “Visual” name that will appear to the client. (we can

write in Arabic here) *• Top\left: parametric variables indicate the position of the

component in the form.• Fonts: color\volume & type of the written “Caption” design.• Hint: showing a ‘hint’ when the cursor (mouse) stop on the ‘button’.• Show Hint: shows the written hint above. • Visible Enabled• Tab Order• etc._________________________________*Delphi is Arabic compatible

Button Events

• OnClick• OnMouseMove• OnKeyPress• etc.

Button Events

• Let’s have a quick sneak on the code• Create a new form• Place a “Button” named “KeKe” in it.:D• Double click on the button• See where you are now • Test it

ShowMessageCtrl + Space

Button Events

Events + Properties

Test it

Before Clicking After Clicking

ShowMessage

• The name of the application's executable file appears as the “caption” of the message box.

• Msg parameter is the message string that appears in the message box.

• Code example:

Var worked:boolean;

If (not(Worked)) thenShowMessage (‘Cmon Work ’);

ShowMessage

procedure TForm1.Button1Click(Sender: TObject);

var b: boolean;

begin

b:= false;

if (not(b)) then

begin

ShowMessage('Hi There ');

end;

end;

ShowMessage

After clicking the button

References

• ‘Delphi’ Help • Delphibasics.co.uk• Delphi Books

See you!

top related