Kylix Open Edition
Ver.1.0 build 5.74
. Bestanden, Prefixen, Componenten, Instellingen, sneltoetsen
Prefixes:
tb_ : toolbar
tbn_ : toolbutton
dlg_ : dialog, invisible
F_ : private data field
frm_ : form
iml_ : image list
mem_ : memo veld, visual design, runtime
mni_ : menu item
mnu_ : menu component, invisible
U_ : Unit file
Bestanden (Files):
Project1.dpr : proj. broncode bestand, Project/View Source
Project1.res : proj. resource file (niet voor Kylix - Borland Delphi compat.?)
Project1.kof : Kylix Option File, project options
Project1.conf: Eq. for .kof file for command line interpreter
Unit1.pas : Delphi/Pascal Unit; form class def., event handlers of form and components
Unit1.xfm : informatie over de form; properties, components en hun eigenschappen
Unit1.dcu : compiled Unit1.pas
*.bpg : group file van de Project manager.
Project1.~dpr : backup van project file; Tools/Editor Options
Unit1.~pas : backup van form unit
Unit1.~xfm : backup van form file
Project1 : the executable, uitvoerb. best.
Componenten:
menu openklappende menu's
dialog interactieve handeling bv na menukeuze
image list met index van menuitems verbonden bv
statusbar, statuspannel informatie als ins/ovr, saved, hints (autohint) enz.
toolbar, knoppenbalk, met toolbuttons, knoppen
timer uitvoeren met instelbaar interval
action List niet-zichbare component die lijst van gebruikersakties opsomt, gelinkt aan image list, bevat action components, properties meestal UI-gericht.
Instellingen:
opstartbanner: Run Options (Run, Parameters, local, parameters) kan je bv -ns zetten om de opstartbanner niet telkens te krijgen bij het testen.
auto-bewaar: shortcut bewaar CTRL-S. Of zet de auto-save optie van de editor aan.
Sneltoetsen:
Om de functietoetsen aktief te maken: Scrollock on.
F11 :
Sh-Ctrl-F11 : Project options ..
Ctrl-F11 : open project ... (om niet per vergissing unit te openen)
Alt-F11 : unit ... toevoegen aan "uses"
Ctrl-Alt-F11 : project tree
F12 : form unit / designer
Sh-F12 : forms lijst
Ctrl-F12 : source lijst
Alt-F12 : text / visual
|
|
Bij starten van een project bewaart men een Unit file, conventie UFilename.pas, en een project file,
conventie Filename.dpr, wat de naam van de executable wordt. Opgelet met deze namen, denk vooral aan de
unit, twee keer dezelde naam kiezen geeft problemen met de project file bij bewaar/run.
Eun unit bevat een hoeveelheid (herbruikbare) code, data types, constanten en variabelen. Een toepassing wordt
onderverdeeld in verschillende units, waaronder sommige form units zijn. Een unit bevat na de unit heading
2 secties: de interface en de implementatie
Er wordt gewerkt met een form, frmFilename waarop je alle objecten plaatst. Er zijn 2 bestanden
verbonden met deze form: een .frm bevat de gegevens over de form zelf, en een .pas dat de broncode bevat voor
de "behaviour" van de form.
De objecten op een form kunnen zichtbaar of niet zichtbaar zijn:
- visible at design time + visible at runtime
- visible at design time + invisible at runtime:
symbool, kunnen overlapt worden door bv edit-gebied.
In de object inspector werk je aan de eigenschappen van de objecten op de form.
Een menu kan je makkelijk kreeren (als object op de form), en er menu-items
aan toevoegen met sneltoetsen en symbolen. Je kan een aktie,
uit te voeren als erop geklikt wordt, eraan toekenen, waarbij een handig
voorkeuzelijstje alle voorgaande bewaart.
iconen bij menu's:
Er is steeds een event handler nodig, die verwijst naar een uit te voeren procedure. Meestal door te
dubbelklikken kom je in de sourcecode (.pas file) terecht waar je die moet maken, voorbereid met begin en end.
Een verzameling iconen maken in een ImageList, waar ze een (onzichtbaar) nummer krijgen.
In de menuitems de koppeling maken naar die file door het nr te selecteren.
Men kan hints opnemen in heel wat objecten, in de form moet Showhint op True staan, en een statusbar (dubbelklik) kan verschillende statuspanels (insert) bevatten met oa hint-info.
Een Class Librarie (CLX) bevat herbruikbare objecten (meestal gemaakt in object pascal)
De naam van die objecten begint met een T, bv TMemo
BaseCLX bevat fucnties als voor tijd, Now die zo opgeroepen worden...
Validation: Als niet relevante menuopties geselecteerd worden doen ze "niets" (reactive validation). Men kan ook vooraf zichtbaar
maken welke menukeuzes relevant zijn; (proactive validation). Daarvoor is het nuttig een onderscheid te maken
tussen de uit te voeren code bij een keuze (working code), en de validatie of een keuze geldig is of niet (checking code).
De form bevat componenten. Een event handler past het gedrag van een component aan, de code zelf
zit echter in de form methods.
Bij een shared event handler kan men adhv de Sender parameter toch een onderscheid maken in de uitvoering.
De operator is checkt of een object van een bepaald type is (-overgeërft), bv .. if Sender is TMenuItem then ..
De operator as checkt hetzelfde at runtime, bv (Sender as TMenuItem).Checked:=True; leidt ev. tot application exception
Action Lists vormen de nodige tussenschakel om gedrag te verdelen naar menu's, buttons, toolbuttons en hints.
De action list kan gekoppeld worden aan een image list om ook de images door te geven aan bv een toolbar. Er zijn een
aantal standard actions voorhanden in Kylix; edit, help en window-gericht.
|