Obsah
Co je to vyskakovací tlačítko v aplikaci FileMaker?
Tlačítko popover v databázích FileMaker je tlačítko, které po kliknutí otevře vyskakovací okno, do kterého lze umístit další prvky rozvržení. Vyskakovací okno se zobrazuje nad všemi ostatními prvky rozvržení a lze jej zvětšit maximálně na stejnou velikost, jakou má viditelná oblast rozvržení. Tlačítka popover se používají, když je třeba zobrazit velké množství informací na malém prostoru nebo jako informační okno pro propojené informace z jiných databází.
Přidání vyskakovacího tlačítka
Chcete-li do aktuálního rozvržení vložit nové vyskakovací tlačítko, nejprve vyvolejte příkaz nabídky. [Zobrazení > Režim rozložení] otevřít režim rozvržení v aplikaci FileMaker. Nyní klikněte myší na nástroj tlačítko na panelu nástrojů FileMakeru (napravo od nástroje pole) a podržte stisknuté tlačítko myši. Ve vyskakovací nabídce vyberte položku [Tlačítko Popover]. Nyní podržte stisknuté tlačítko myši a přetáhněte nové vyskakovací tlačítko na požadované místo v rozvržení. Jakmile tlačítko myši uvolníte, vytvoří se na odpovídající pozici nové vyskakovací tlačítko a kurzor se umístí do klávesnice, kde můžete tlačítko ihned označit.
Nastavení vyskakovacího okna
Dvojklikem na tlačítko nového vyskakovacího okna otevřete okno vyskakovacího okna, jehož nastavení otevřete opětovným dvojklikem na okno vyskakovacího okna.
Titulní pruh vyskakovacího okna
Do prvního pole zadejte název vyskakovacího okna. Klikněte na tlačítko [Upřesněte...] můžete jako název zadat vypočtenou hodnotu. Pomocí zaškrtávacího políčka [Zobrazit titulkový pruh] pro zobrazení nebo skrytí titulkového pruhu ve vyskakovacím okně.
Umístění vyskakovacího okna
Pomocí níže uvedených tlačítek můžete určit směr, ze kterého se má otevírat vyskakovací okno vzhledem k tlačítku popover. Pokud není dostatek místa pro zobrazení vyskakovacího okna v požadované pozici, může FileMaker zobrazit vyskakovací okno v jiné pozici.
Spouštěč skriptu vyskakovacího okna
Pomocí tlačítka [Nastavit spouštěč skriptu] lze pro vyskakovací okno definovat následující spouštěče skriptu:
- WithObjectEnter
- Stisknutí klávesy WithObject
- WithObjectChange
- WithObjectValidate
- WithObjectSave
- WithObjectExit
Spouštěče skriptů jsou velmi vhodné pro ovládání položek ve vyskakovacích oknech. Například spouštěč skriptu "OnObjectEnter" lze použít k předvyplnění obsahu pole a spouštěč skriptu "OnObjectExit" lze použít ke čtení obsahu pole nebo k jeho zadání do databáze.
Nastavení v inspektoru
V inspektoru lze provést celou řadu nastavení celkového vzhledu vyskakovacího okna. V oblasti [Ilustrace] všechny možnosti rámu vyskakovacího okna a obsahu vyskakovacího okna lze nastavit samostatně.
Otevření vyskakovacího okna pomocí skriptu
Důležitým údajem v inspektoru je název objektu v poli [Pozice]. To lze použít k otevření vyskakovacího okna ve skriptu pomocí funkce [Přejít na objekt] lze otevřít. Na tomto místě upozorňujeme, že pro otevření vyskakovacího okna je rozhodující jeho název, nikoli název vyskakovacího tlačítka.
Použití vyskakovacího okna jako interaktivního vstupního dialogu
Vyskakovací okno můžete použít jako vstupní dialog v několika jednoduchých krocích. Data se do databáze uloží až po kliknutí uživatele na okno. [Uložit] kliknutí. Každý vyskakovací dialog se skládá přesně z jednoho vyskakovacího tlačítka a jednoho skriptu.
- Vytvořte globální vstupní pole každého požadovaného typu pole (např. zzGlo_Text_01 až zzGlo_Text_20, zzGlo_Number_01 až zzGlo_Number_10 atd.).
- Vytvořte nové vyskakovací tlačítko a umístěte do něj požadovaná vstupní pole, případně popisky a dvě tlačítka. [Uložit] a [Zrušit].
- Vytvořte nový skript, např. "dlg.My_Dialogue", a vložte do něj několik dílčích skriptů, z nichž každý lze volat pomocí parametru skriptu.
- Vytvoření částečného skriptu, který je vytvořen pomocí parametru script "trigger.new" lze vyvolat. Vložení mezi If(Get(ScriptParameter) = "trigger.New") a Konec (if) pro každé vstupní pole příkaz Nastavení hodnoty pole (zzGlo_Text_01; "") který automaticky vymaže pole při vyvolání dialogu. V případě potřeby můžete místo vyprázdnění zadat i určité hodnoty.
- Přidání spouštěče skriptu do vyskakovacího okna WithObjectEnter s novým skriptem a parametrem "trigger.new" přidáno.
- V novém skriptu vytvořte další dílčí skript, který lze volat pomocí parametru skriptu "sf.Save". Mezi If(Get(ScriptParameter) = "sf.Save") a Konec (if) nyní můžete spustit libovolný skript, který ze vstupních polí vytvoří datový záznam nebo v případě potřeby další související datové záznamy v databázi. Poté vstupní pole vyprázdněte a na konec přidejte následující text Konec (if) příkaz Ukončení aktuálního skriptu přidáno.
- Stiskněte tlačítko [Uložit] s voláním nového skriptu a odpovídajícím parametrem skriptu "sf.save".
- Vytvoření dalšího částečného skriptu "sf.cancel" a přiřadit tlačítko [Zrušit] s voláním skriptu a parametrem "sf.cancel".
- Na konec skriptu vložte příkaz Přejít na objekt "Vyskakovací okno". Pokud je skript zavolán bez parametrů, otevře se vyskakovací okno.
Příklad skriptu pro dialog popover
#
# trigger.new
If [ Get ( ScriptParameter ) = "trigger.New"]
Nastavte hodnotu pole [zzGlo_Text_01; ""]
Nastavit hodnotu pole [zzGlo_Date_01; Get( SystemDate ) ]
Nastavit hodnotu pole [zzGlo_Text_02; Kunden::Sachbearbeiter ]
Nastavit hodnotu pole [zzGlo_Text_03; "" ]
Nastavit hodnotu pole [zzGlo_Text_04; "" ]
Ukončit aktuální skript []
Konec (if)
#
# Tlačítko [Uložit]
If [ Get ( ScriptParameter ) = "sf.Save"]
Nastavte hodnotu pole [Typ akce::Action; zzGlo_Text_01]
Nastavit hodnotu pole [Actions::Date_Action; zzGlo_Date_01]
Nastavit hodnotu pole [Actions::Agent; zzGlo_Text_02]
Nastavit hodnotu pole [Actions::Action text; zzGlo_Text_03]
Nastavit hodnotu pole [Actions::Remarks; zzGlo_Text_04]
Zápis změny dat/dotazu [Potlačit ověřování zadaných dat; Bez dialogového okna]
Ukončit aktuální skript []
Konec (if)
#
# Tlačítko [Zrušit]
If [ Get ( ScriptParameter ) = "sf.Cancel"]
Zavřít vyskakovací okno
Nastavit hodnotu pole [zzGlo_Text_01; ""]
Nastavit hodnotu pole [zzGlo_Date_01; "" ]
Nastavit hodnotu pole [zzGlo_Text_02; "" ]
Nastavit hodnotu pole [zzGlo_Text_03; "" ]
Nastavit hodnotu pole [zzGlo_Text_04; "" ]
Ukončit aktuální skript []
Konec (if)
#
# Otevřít vyskakovací okno
Přejít na objekt [název objektu: "Popover window"]
Samozřejmě můžete do skriptu přidat další spouštěče podle potřeby. Tímto způsobem můžete vytvořit zcela interaktivní vyskakovací dialog a například automaticky měnit hodnoty během zadávání v závislosti na jiných hodnotách. V tomto bodě se možnostem meze nekladou.
Zabránění zavření vyskakovacího okna
Vyskakovací okna se automaticky zavřou, když uživatel klikne na obsah rozvržení vedle vyskakovacího okna. Toto chování lze vypnout pomocí triku, takže se vyskakovací okno stane modálním:
Zabránění náhodnému zavření vyskakovacích oken (FMM Forum)
Další otázky týkající se FileMakeru? Osobně je to rychlejší.
V rámci naší Koučování a školení rádi vás osobně informujeme o funkcích FileMakeru, které potřebujete pro vývoj vašeho řešení FileMaker. Samozřejmě rádi vyhovíme vašim individuálním požadavkům. Fakturace je přizpůsobená a spravedlivá po 15 minutách. Platit můžete pohodlně bankovním převodem nebo prostřednictvím služby PayPal.
