FMK2016 - Arnold Kegebein - User Interface: Panel Window
1. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
www.filemaker-konferenz.com
Fortgeschrittene User Interface Entwicklung: Panel Windows
Sprecher: Dipl.-Ing. Arnold Kegebein
User Interface : Panel Window
2. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Über den Sprecher
• Name: Arnold Kegebein
• Ausbildung: Studium der technischen Informatik
Abschluss: Diplom-Ingenieur (FH)
• Tätigkeiten: Inhouse Entwickler, Hamburg
IT Leiter, Chicago, USA
IT Consultant, Hamburg
über 30 Jahre Erfahrungen
mit Datenbanken
• Sonstiges: 10 Jahre FileMaker Entwickler
Autor für das FileMaker Magazin
Fan von TV-Show „The Big Bang Theory“
3. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Über den Vortrag
• Definition: Was ist ein Panel Window?
• Anwendungsbeispiele
• Vor- und Nachteile
• Programmierung in FileMaker
• Detailbetrachtung einiger besonderer Aspekte
• Öffnen des Panel Windows
• Aktivierung des Dokumentfensters
• Kommunikation zwischen Panel Window und Dokumentfenster
• Fragen & Antworten
• Beispiel
4. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Panel Window - Definition
• Panel = Gruppe zusammenhängender Objekte
• Panel Window = … in einem Fenster dargestellt
• Kein Dokumentfenster
• Nicht modal
• Fenster kann den Fokus abgeben
• Es bleibt auch inaktiv sichtbar
• Schwebend (floating window)
• Fenster liegt oberhalb des Dokumentfensters
• Mehrere Panel Windows können sich überlappen
6. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Vorteile von Panel Windows
• Fensterinhalt ist immer sichtbar (UI)
• Fenster kann vom Anwender verschoben werden (UI)
• Modifikationen werden nur an einer Stelle vorgenommen (Programmierung)
• Fensterinhalt ist unabhängig vom Dokumentfenster (Datenmodell)
7. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Nachteile von Panel Windows
• Fenster verdeckt evtl. Informationen im Dokumentfenster (UI)
• Informationsaustausch zwischen Panel Window und Dokumentfenster erfordert
besonderen Aufwand (Programmierung)
• Fokus/Zustand nicht immer eindeutig oder undefiniert (UI)
• Beispiel Inspektor und Panel Window für Farben
8. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Programmierung: schwebendes Fenster
• Scriptschritt: Neues Fenster
• Erweiterten Stil angeben
Gutes UI:
Wichtig, wenn keine andere
Möglichkeit zum Schließen
des Fensters eingebaut wird
9. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Beachtenswerte Aspekte
• Panel Window öffnen
• Mehrseitiges Panel Window
• Mehrere gleichzeitig genutzte Panel Windows
• Oberstes Dokumentfenster auswählen
• Kommunikation zwischen Dokumentfenster und Panel Window
• Fenstergröße und -position
10. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Panel Window öffnen
• Mehrfaches Öffnen verhindern
• Prüfen, ob Panel Window schon offen ist
• Erfordert eigenen Fensternamen
• Verschiedene Methoden denkbar
11. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Fenster öffnen/aktivieren
Variante A
Variante B
12. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Vor- und Nachteile
• Variante A erhält bestehende Einstellungen im schon geöffneten Fenster
• Position und Größe des Fensters
• Ausgewählte Tab-Register
• Variante B bringt das Fenster in eine definierte Starteinstellung (Initialisierung)
• Welche Trigger werden evtl. ausgelöst?
• Es müssen evtl. erneut Daten vom Dokumentfenster abfragt werden
13. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Oberstes Dokumentfenster auswählen
• Definition Dokumentfenster:
„kein schwimmendes oder modales Fenster“
• FM Funktion Hole( FensterStil )
• 0 : Dokumentfenster
• FM Funktion FensterNamen( "" )
• Funktionsliste entspricht der Z-Ordnung der offenen Fenster
• Oberstes Fenster ist in der Liste zuerst aufgeführt
14. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Panel Window Kommunikation
• Name des zuvor aktiven Fensters merken
• Wichtig bei mehreren Panel Windows
• Wichtig für Zwei-Fenster-Kommunikation
Script aktiviert
Dokumentfenster
… liest/schreibt Daten
im Dokumentfenster
Script wird im Panel Window gestartet
Script aktiviert
Panel Window
… zeigt Bezugsdaten im Panel Window an
15. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Panel Window Kommunikation
• Trigger Scripts
• BeiDatensatzLaden: Meldet ID des aktuellen Datensatzes
• BeiObjektBetreten: Meldet das aktive Feld
• Zustandsspeicher
• Globale Variablen
• Globale Felder
• Panel Window Felder (spezielle Tabelle)
• Empfohlenes Datenmodell: Connector/Selector oder Transistor
Dokumentfenster steuert das Panel Window
16. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Panel Window Kommunikation
• Zustände ändern
• Im Dokumentfenster Feldwerte ändern
• Bezugsdaten im Panel Window ändern
• Für Aktionen das Dokumentfenster auswählen/aktivieren
Panel Window agiert mit Dokumentfenster
17. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Fenstergröße und -position
• Panel Fenster sind üblich viel schmaler als ein Dokumentfenster
• Höhe kann fix oder dynamisch sein
• Höhe passt sich automatisch dem Panelinhalt an
• Position oft rechts oben
• Anwender sollte Position, Größe und evtl. Zoom ändern können
• Entsprechende Werte für jeden User speichern
• Nur in einer Session: → globale Felder/Variablen
• Session übergreifend: → User Tabelle, Werte speichern
18. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Fragen und Antworten
• Sie haben noch Fragen zum Panel Window?
• Oder wollen etwas zum Vortrag hinzufügen?
19. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
User Interface : Panel Window • Dipl.-Ing. (FH) Arnold Kegebein
Beispiel
• Anwendungsbeispiel eines Panel Window in einer Datenbank
20. 7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
FileMaker Konferenz 2016 Salzburg
Vielen Dank unseren Sponsoren
Ohne Sponsoring wäre diese Konferenz
so nicht möglich!