Tipy, triky, hotline II
Dnešní koutek pomoci je věnován visualním foxkařům:
Pokud se pokusíte nastavit _Screen.Picture, dojdete k závěru, že potřebujete obrázek přesně odpovídající velikosti hlavní obrazovky, jinak se objeví mozaika, a to asi nebyl původní záměr. Pomoc je jednoduchá, stačí si uvědomit, že _Screen je objekt a má metodu AddObject().
_Screen.AddObject("obr","image")
* Nastav obrázek (pro verze VFP 6.0 a výš lze použít ještě GIF a JPG)
_Screen.obr.Picture="myPicture.bmp"
* Vycentruj obrázek dle libosti
*_Screen.obr.Move(liLeft,liTop[,liWidth[,liHeight]])
_Screen.obr.Visible=.T. && A zobraz ho
Takto lze přidat i popis (verze,autor apod.), aniž by musel běžet nějaký formulář jako podklad.
Každému se už stalo, že vložil na formulář instanci své třídy a začal editovat metodu a
nevěděl jak dál. Co obsahuje metoda nadřízeného objektu? Jak na to? Návrhář třídy se nedá otevřít vedle návrháře formuláře. Ve VFP 5.0 a 6.0 to řešila utilitka SuperClass, ale pro sedmičku zatím není.
Lze použít ClassBrowser, který přidá maličký toolbar, ale to není stále ono. Jak spustit jen tento toolbar? V adresáři Tools\XSource je soubor XSource.ZIP a v něm zdroje k několika užitečným nástrojům - jedním z nich je i ClassBrowser, který obsahuje knihovnu SuperCls.VCX s třídou SuperCls (toolbar). Když ZIP rozbalíte, najdete v adresáři BROWSER potřebné soubory pro následující kód:
*: start SuperCls toolbar
* Pro verzi VFP 5.0
* SET CLASSLIB TO (HOME()+"\TOOLS\XSOURCE\BROWSER\SUPERCLS.VCX")
*oTlb=CREATEOBJECT("supercls")
* Pro verzi VFP 6.0 a vyšší
oTlb=NEWOBJECT("supercls",HOME()+"\TOOLS\XSOURCE\BROWSER\SUPERCLS.VCX")
oTlb.Dock(0)
oTlb.Show()
Kdykoliv se pak otevře nějaká metoda (formulář, třída), jejíž nadřízená metoda obsahuje kód, je možné kliknutím na tužku otevřít tuto nadřízenou metodu a prohlédnout si ji nebo upravit. Navíc je možné vkládat volání DODEFAULT()
Starší SuperClass lze stáhnout ze serveru fox.orgasoft.cz.
Poznámka k VFP 7.0: Okno Properties nyní zobrazuje text [Inherited
], pokud existuje existuje metoda v nadřízené třídě.
Zkuste se podívat na zástupce , ze kterého spouštíte VFP7.EXE. Není to plnohodnotný zástupce - nemá příponu LNK, je vytvořen instalačním programem. Odstraňte ho a nahraďte ho normálním zástupcem VFP7.EXE
:o)
Případné další dotazy nebo poznatky o instalaci posílejte na adresu hotline@daquas.cz
Martin Růžička