A Delphi példa adatbázisában (DBDEMOS) megtalálható BioLife tábla adataiból állítjuk elő a bemutató oldalait úgy, hogy lesz egy kezdőlap, majd minden egyes rekordhoz létrehozunk egy diát.
A művelet a Button1 OnClick eseményének bekövetkeztekor indul. Első lépésben a már megszokott módon csatlakozunk a PowerPoint alkalmazáshoz, majd létrehozunk benne egy új bemutatót. Ezután rögtön létrehozzuk az első diát, ami a nyitó oldal lesz, ezen belül pedig középen elhelyezünk egy képet, amit fájlból töltünk be a Shapes objektum AddPicture függvényével. A kép pozícióját a betöltés után állítjuk be:
FPPApp:=CreateOleObject('PowerPoint.Application');
FPresentation:=FPPApp.Presentations.Add(false);
Slide:=FPresentation.Slides.Add(1, ppLayoutBlank);
Shape:=Slide.Shapes.AddPicture(HomeDir+'pics\title.gif', false, true, 0, 0);
Shape.Left:=Slide.Master.Width div 2 - Shape.Width div 2;
Shape.Top:=Slide.Master.Height div 3;
Ezután megadjuk, hogy a kép milyen animációval jelenjen meg. A kép spirál effektussal, az indítás után 1 másodperccel fog „berepülni” a végleges pozíciójába:
Shape.AnimationSettings.EntryEffect:=ppEffectSpiral;
Shape.AnimationSettings.AdvanceTime:=1;
Shape.AnimationSettings.AdvanceMode:=ppAdvanceOnTime;
Ezzel a nyitólap már meg is van. Ezután egy ciklusban beolvassuk az adatbázis rekordjait. A ciklus elején rögtön létrehozzuk az új diát, majd a FollowMasterBackground property-t hamisra állítjuk. Ezt azért kell megtennünk, hogy egyéni hátteret tudjunk adni a diának. Ezután a háttérszínt beállítjuk úgy, hogy a kék színösszetevő értéke 100 lesz, a többi pedig 0, vagyis sötétkékre. Ezzel a hátteret még nem fejeztük be, még egy képet is betöltünk. A háttérszínt azért kellett beállítanunk, mert a betöltött háttérkép átlátszó, és ahol a kép átlátszó, ott a háttérszín jelenik meg. Ha megvagyunk a háttérrel, akkor beállítjuk a dia megjelenítésének animációját. Hogy eléggé változatos legyen a képváltás, így az animációt véletlenszerűre állítjuk:
Slide:=FPresentation.Slides.Add(RecNo+1, ppLayoutBlank);
Slide.FollowMasterBackground:=false;
Slide.Background.Fill.ForeColor.RGB:=RGB(0, 0, 100);
Slide.Background.Fill.UserPicture(HomeDir+'pics\bg.gif');
Slide.SlideShowTransition.EntryEffect:=ppEffectRandom;
Létrehozunk egy szövegdobozt a dia bal felső sarkában, amiben a rekord azonosítóját fogjuk megjeleníteni. A szöveg elrendezése vízszintes lesz, ennek megadására szolgál a msoTextOrientationHorizontal konstans. A szövegdobozban két sor jelenik meg, az első a felirat („Species No.:”), a második pedig a rekord azonosítója. Ennek érdekessége az lesz, hogy a második sort vastag betűvel fogjuk kiírni. Ehhez szükség lesz a szövegdoboz TextRange objektumára. Ennek Font property-jében megadjuk a betűtípust, majd a második bekezdés betűtípusánál beállítjuk a félkövér tulajdonságot, és középre igazítjuk a bekezdés szövegét.
Shape:=Slide.Shapes.AddTextBox(msoTextOrientationHorizontal, 5, 5, 80, 20);
Range:=Shape.TextFrame.TextRange;
Range.Text:='Species No.:'+CRLF+FormatFloat('#0,', Table1SpeciesNo.Value);
Range.Font.Name:='Arial';
Range.Font.Size:=10;
Range.Font.Color:=clWhite;
Range.ParagraphFormat.Alignment:=ppAlignCenter;
Range.Paragraphs(2).Font.Bold:=true;
Ezután következik a kép megjelenítése, amihez az adatbázisból ki kell olvasni a képet, és el kell menteni egy fájlba. Ehhez egy TPicture objektumot használunk (pic). Az elmentett fájlt már könnyedén beilleszthetjük a diára. Középre igazítjuk, és beállítjuk a fade effektust a megjelenítésnél.
Ezután létrehozunk még három szövegdobozt. Az elsőben a tulajdonságok neveit jelenítjük meg, és jobbra igazítjuk benne a szöveget. A másodikban a tulajdonságok jelennek meg. Ez a szövegdoboz Nyújtás effektussal fog megjelenni. A harmadik szövegdobozban a leírás lesz látható, ez jelenik meg utoljára a dián véletlenszerű effektussal.
A dia alján megjelenítünk még egy szövegdobozt, amiben egy link található a www.SoftwareOnline.hu oldalra. Ahhoz, hogy a link működjön is, a szöveg Action objektumánál meg kell adni, hogy mi történjen, amikor a felhasználó a linkre kattint:
Action:=Shape.TextFrame.TextRange.ActionSettings.Item(ppMouseClick);
Action.Action:=ppActionHyperlink;
Action.Hyperlink.Address:='http://www.SoftwareOnline.hu/';