Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Wizards & Builders GmbH List/Comboboxen Programmierung von List- und Comboxen mit Microsoft Visual FoxPro.

Ähnliche Präsentationen


Präsentation zum Thema: "Wizards & Builders GmbH List/Comboboxen Programmierung von List- und Comboxen mit Microsoft Visual FoxPro."—  Präsentation transkript:

1 Wizards & Builders GmbH List/Comboboxen Programmierung von List- und Comboxen mit Microsoft Visual FoxPro

2 Wizards & Builders GmbH Diese Schulung dient der Einführung in das Arbeiten mit List- und Comboxen unter Microsoft Visual FoxPro

3 Wizards & Builders GmbH Themenübersicht Grundlagen Grundlagen Unterschiede zwischen List-/ Comboboxen Unterschiede zwischen List-/ Comboboxen Ereignisse Ereignisse Click, DblClick, InteractiveChange, Valid, When Click, DblClick, InteractiveChange, Valid, When Zugriff auf Einträge Zugriff auf Einträge Diverse Sonderfälle Diverse Sonderfälle

4 Wizards & Builders GmbH Grundlagen Grundlagen von List- und Comboboxen unter Microsoft Visual FoxPro

5 Wizards & Builders GmbH List- und ComboBoxen List- und ComboBoxen finden Verwendung zur Darstellung multipler Inhalte List- und ComboBoxen finden Verwendung zur Darstellung multipler Inhalte Sie sind verwendbar als Sie sind verwendbar als "Auskunfts"-Control "Auskunfts"-Control "Auswahl"-Control "Auswahl"-Control "auslösendes" Control "auslösendes" Control

6 Wizards & Builders GmbH Begriffs-Vereinbarungen VFP-deutsch: Listenfeld Listenfeld Kombinationsfeld Kombinationsfeld Datenfeld Datenfeld ElementNr ElementNr Index Index Eigenschaft EigenschaftVFP-Englisch: ListBox ListBox ComboBox ComboBox Array Array ItemId ItemId Index Index Property Property

7 Wizards & Builders GmbH Neuigkeiten in VFP teilweise objektorientierter Ansatz teilweise objektorientierter Ansatz Gleichwertigkeit von List- und ComboBox Gleichwertigkeit von List- und ComboBox neue Datenquellen neue Datenquellen Mehrspaltigkeit Mehrspaltigkeit Einbeziehen von BMPs Einbeziehen von BMPs

8 Wizards & Builders GmbH OOP mit List-/ComboBoxen Können wie alle anderen VFP-Controls als Objekte behandelt werden. Können wie alle anderen VFP-Controls als Objekte behandelt werden. Sind keine Container, d.h. sie sind nicht in weitere Unterobjekte gegliedert! Sind keine Container, d.h. sie sind nicht in weitere Unterobjekte gegliedert! Gleichwertigkeit bzgl. Datenquellen und aller Neuerungen Gleichwertigkeit bzgl. Datenquellen und aller Neuerungen

9 Wizards & Builders GmbH Unterschiede Unterschiede zwischen List- und Comboboxen unter Microsoft Visual FoxPro

10 Wizards & Builders GmbH Unterschiede...resultierend aus der Funktionalität (sichtbar in differierenden Events/Props)...resultierend aus der Funktionalität (sichtbar in differierenden Events/Props)...bzgl. des Event-Verhaltens!...bzgl. des Event-Verhaltens! außerdem bei ComboBox: außerdem bei ComboBox: Unterschiede zwischen einer TextBox und dem Eingabebereich einer ComboBox Unterschiede zwischen einer TextBox und dem Eingabebereich einer ComboBox

11 Wizards & Builders GmbH Funktionalitätsunterschiede resultierend aus der Bedienung resultierend aus der Bedienung MoverBars und MultiSelect nur bei der ListBox MoverBars und MultiSelect nur bei der ListBox Text-Editier-Möglichkeiten nur bei ComboBox (Style 0) Text-Editier-Möglichkeiten nur bei ComboBox (Style 0)

12 Wizards & Builders GmbH Properties/Events ComboBox AlignmentSelectedForeColor AlignmentSelectedForeColor BackColorSelLength BackColorSelLength ForeColorSelStart ForeColorSelStart MarginSelText MarginSelText SelectedBackColorStyle SelectedBackColorStyle alle notwendig für den Eingabebereich alle notwendig für den Eingabebereich DropDown-Event DropDown-Event reagiert auf das "Ausklappen" reagiert auf das "Ausklappen"

13 Wizards & Builders GmbH Spezielle Properties ListBox MoverBars MoverBars MultiSelect MultiSelect

14 Wizards & Builders GmbH Ereignisse Wichtige Ereignisse in Combo/Listboxen unter Microsoft Visual FoxPro

15 Wizards & Builders GmbH Wichtige Events Click Click DblClick DblClick InteractiveChange InteractiveChange Valid Valid When When

16 Wizards & Builders GmbH Click-Event wird aktiviert wird aktiviert bei Mausclick bei Mausclick beim tastaturgesteuerten "Wandern" in einer Listbox mit den - Tasten beim tastaturgesteuerten "Wandern" in einer Listbox mit den - Tasten (nicht dagegen bei HOME, END, PgUp, PgDn!) (nicht dagegen bei HOME, END, PgUp, PgDn!) beim "ENTER"-Drücken in aufgeklappter ComboBox beim "ENTER"-Drücken in aufgeklappter ComboBox wird nicht aktiviert: wird nicht aktiviert: bei Klick in den ScrollBar bei Klick in den ScrollBar bei Klick in nicht belegte Teile einer Listbox bei Klick in nicht belegte Teile einer Listbox wird doppelt(!) aktiviert wird doppelt(!) aktiviert (in bestimmten Konstellationen) (in bestimmten Konstellationen)

17 Wizards & Builders GmbH DblClick-Event wird aktiviert wird aktiviert bei Maus-Doppelclick bei Maus-Doppelclick beim "ENTER"-Drücken in einer ListBox ACHTUNG! Bei TabStop =.T. verliert die ListBox in diesem Fall den Eingabefocus! beim "ENTER"-Drücken in einer ListBox ACHTUNG! Bei TabStop =.T. verliert die ListBox in diesem Fall den Eingabefocus! wird nicht aktiviert: wird nicht aktiviert: in der ComboBox Ausnahme: Doppelclick im Eingabebereich bei Style 0 in der ComboBox Ausnahme: Doppelclick im Eingabebereich bei Style 0 bei Klick in nicht belegte Teile einer Listbox bei Klick in nicht belegte Teile einer Listbox wird doppelt(!) aktiviert wird doppelt(!) aktiviert (in bestimmten Konstellationen) (in bestimmten Konstellationen)

18 Wizards & Builders GmbH InteractiveChange-Event wird aktiviert, wenn ein anderer als der gerade aktive Eintrag zum aktuellen Eintrag gemacht wird wird aktiviert, wenn ein anderer als der gerade aktive Eintrag zum aktuellen Eintrag gemacht wird durch Mausclick auf einen anderen als den aktiven Eintrag durch Mausclick auf einen anderen als den aktiven Eintrag durch Tastatur-Navigation durch Tastatur-Navigation wird nicht aktiviert: wird nicht aktiviert: bei Klick in den ScrollBar bei Klick in den ScrollBar bei Klick in nicht belegte Teile einer Listbox bei Klick in nicht belegte Teile einer Listbox bei MultiSelect =.T. muß der aktuelle Eintrag kein selektierter Eintrag sein! bei MultiSelect =.T. muß der aktuelle Eintrag kein selektierter Eintrag sein!

19 Wizards & Builders GmbH Valid-Event wird aktiviert: wird aktiviert: bei Mausclick (Auswahlliste der ComboBox) bei Mausclick (Auswahlliste der ComboBox) bei Maus-Doppelclick (ListBox) bei Maus-Doppelclick (ListBox) beim "ENTER"-Drücken (List-/ComboBox; die ListBox und eine nicht aufgeklappte ComboBox verliert bei TabStop=.T. in diesem Fall den Focus!) beim "ENTER"-Drücken (List-/ComboBox; die ListBox und eine nicht aufgeklappte ComboBox verliert bei TabStop=.T. in diesem Fall den Focus!) wird nicht aktiviert: wird nicht aktiviert: bei Mausclick in ListBox bei Mausclick in ListBox bei Tastatur-Navigation in aufgeklappter ComboBox bei Tastatur-Navigation in aufgeklappter ComboBox

20 Wizards & Builders GmbH When-Event wird aktiviert: wird aktiviert: beim Aktivieren einer List- oder ComboBox beim Aktivieren einer List- oder ComboBox als letzter Event bei Mausklick oder Tastatur-Navigation in der ListBox (außer bei Mausclick auf den aktiven Eintrag!) als letzter Event bei Mausklick oder Tastatur-Navigation in der ListBox (außer bei Mausclick auf den aktiven Eintrag!) als letzter Event bei Mausklick oder "ENTER"-Drücken in der aufgeklappten ComboBox als letzter Event bei Mausklick oder "ENTER"-Drücken in der aufgeklappten ComboBox beim "ENTER"-Drücken (ListBox und nicht aufgeklappte ComboBox bei TabStop=.F.) beim "ENTER"-Drücken (ListBox und nicht aufgeklappte ComboBox bei TabStop=.F.)

21 Wizards & Builders GmbH Zugriff auf Einträge Werzuweisung und Zugriff auf Einträge in Combo/Listboxen

22 Wizards & Builders GmbH ControlSource bestimmt die Variable oder das Datenbankfeld, welches den "Zustand" des Listenfeldes verwaltet (d.h. auf welchem Eintrag befindet sich augenblicklich der Listbox-/ ComboBox-Cursor) bestimmt die Variable oder das Datenbankfeld, welches den "Zustand" des Listenfeldes verwaltet (d.h. auf welchem Eintrag befindet sich augenblicklich der Listbox-/ ComboBox-Cursor) Datentyp "C" oder "N" Datentyp "C" oder "N" definiert nicht(!) die in List-/ ComboBox anzuzeigenden Einträge! definiert nicht(!) die in List-/ ComboBox anzuzeigenden Einträge!

23 Wizards & Builders GmbH verwandte Properties ListIndex (Datentyp "N") ListIndex (Datentyp "N") Nummer des aktuellen Eintrags (bezogen auf die optische Reihenfolge der Einträge) Nummer des aktuellen Eintrags (bezogen auf die optische Reihenfolge der Einträge) ListItemId (Datentyp "N") ListItemId (Datentyp "N") eindeutige Identifikationsnummer (unabhängig von der optischen Reihenfolge) eindeutige Identifikationsnummer (unabhängig von der optischen Reihenfolge) DisplayValue (Datentyp "N" oder "C") DisplayValue (Datentyp "N" oder "C") Inhalt der ersten Spalte bzw. bei ComboBox mit Style 0 Inhalt des Eingabebereiches Inhalt der ersten Spalte bzw. bei ComboBox mit Style 0 Inhalt des Eingabebereiches Value (Datentyp "N" oder "C") Value (Datentyp "N" oder "C") aktueller Eintrag aktueller Eintrag

24 Wizards & Builders GmbH Zugriff auf die Einträge (1) über den "Index" über den "Index" aktuelle Position des jeweiligen Eintrags bezogen auf die optische Anordnungsfolge aktuelle Position des jeweiligen Eintrags bezogen auf die optische Anordnungsfolge über die "ItemId" über die "ItemId" eine eindeutige, von der optischen Position unabhängige Identifikation eine eindeutige, von der optischen Position unabhängige Identifikation ACHTUNG! Bestimmte Methoden bzw. Properties funktionieren entweder nur mit "Index" oder nur mit "ItemId"! ACHTUNG! Bestimmte Methoden bzw. Properties funktionieren entweder nur mit "Index" oder nur mit "ItemId"!

25 Wizards & Builders GmbH Zugriff auf Einträge (2) Index-Zugriff: arbeitet mit "Index arbeitet mit "Index AddItem AddItem IndexToItem IndexToItem ItemData ItemData List List ListIndex ListIndex NewIndex NewIndex Picture Picture RemoveItem RemoveItem Selected Selected TopIndex TopIndexID-Zugriff: arbeitet mit "ItemId" arbeitet mit "ItemId" AddListItemM AddListItemM ItemToIndex M ItemToIndex M ItemIdData PA ItemIdData PA ListItem PA ListItem PA ListItemId P ListItemId P NewItemId P NewItemId P PA PA RemoveListItem M RemoveListItem M SelectedId PA SelectedId PA TopItemId P TopItemId P

26 Wizards & Builders GmbH Zugriff auf Einträge (3) Index-Zugriff: arbeitet mit "Index" arbeitet mit "Index" ItemData ItemData List List Picture Picture Selected SelectedID-Zugriff: arbeitet mit "ItemId" arbeitet mit "ItemId" ItemIdData ItemIdData ListItem ListItem SelectedId SelectedId Die vorstehenden Properties beinhalten array-ähnliche Strukturen, auf die als Subskript mit dem gewünschten "Index" bzw. der gewünschten "ItemId" zugegriffen werden kann. Die vorstehenden Properties beinhalten array-ähnliche Strukturen, auf die als Subskript mit dem gewünschten "Index" bzw. der gewünschten "ItemId" zugegriffen werden kann. Auf diese Properties kann nicht(!) mit VFP-Array-Befehlen zugegriffen werden! Auf diese Properties kann nicht(!) mit VFP-Array-Befehlen zugegriffen werden!

27 Wizards & Builders GmbH Daten-Quellen 0 - keine 0 - keine 1 - explizit angegebene Einträge 1 - explizit angegebene Einträge 2 - Alias 2 - Alias 3 - SQL-Statement 3 - SQL-Statement 4 - Query 4 - Query 5 - Array 5 - Array 6 - Feldliste 6 - Feldliste 7 - Dateien 7 - Dateien 8 - DBF-Struktur 8 - DBF-Struktur (9 - Popup) (9 - Popup)

28 Wizards & Builders GmbH Divsere Sonderfälle Mehrere Spalten, Mehrfach- auswahl, Sortieren, Mover, BitMaps in Combo/Listbox

29 Wizards & Builders GmbH Properties für mehrspaltigeBoxen BoundColumn BoundColumn ColumnCount ColumnCount ColumnLines ColumnLines ColumnWidths ColumnWidths DisplayValue DisplayValue RowSource RowSource RowSourceType RowSourceType

30 Wizards & Builders GmbH Mehrfachauswahl ListBox MultiSelect =.T. MultiSelect =.T. funktioniert bei allen RowSourceTypes funktioniert bei allen RowSourceTypes Selected und SelectId geben Auskunft darüber, ob ein Eintrag selektiert ist Selected und SelectId geben Auskunft darüber, ob ein Eintrag selektiert ist ListIndex, ListItemId, Value, DisplayValue und ControlSource geben keine(!) Auskunft darüber, ob ein Eintrag selektiert ist ListIndex, ListItemId, Value, DisplayValue und ControlSource geben keine(!) Auskunft darüber, ob ein Eintrag selektiert ist

31 Wizards & Builders GmbH "MoverBars" und "Sorted" in der ListBox nur zugelassen bei RowSourceType 0 und 1 nur zugelassen bei RowSourceType 0 und 1 bei MoverBars =.T. kann die ListBox per Maus umsortiert werden bei MoverBars =.T. kann die ListBox per Maus umsortiert werden Sorted =.T. führt zum alphabetisch sortierten Anzeigen der Listbox (MACHINE-Sortierung ohne Berücksichtigung von CodePage und Collate-Sequenz!) Sorted =.T. führt zum alphabetisch sortierten Anzeigen der Listbox (MACHINE-Sortierung ohne Berücksichtigung von CodePage und Collate-Sequenz!)

32 Wizards & Builders GmbH "Sorted" in der ListBox bewirkt ein sortiertes Erscheinen der ListBox beim Aufbau bewirkt ein sortiertes Erscheinen der ListBox beim Aufbau die Sortierung kann durch MoverBars bzw. explizites Hinzufügen von Einträgen mit AddItem/AddListItem gestört werden (obwohl Sorted =.T. bestehen bleibt) die Sortierung kann durch MoverBars bzw. explizites Hinzufügen von Einträgen mit AddItem/AddListItem gestört werden (obwohl Sorted =.T. bestehen bleibt) eine erneute Zuweisung "Sorted =.T." bewirkt ein neuerliches Sortieren eine erneute Zuweisung "Sorted =.T." bewirkt ein neuerliches Sortieren

33 Wizards & Builders GmbH BMPs in List-/ComboBox PICTURE( ListIndex ) = "xyz.bmp"bewirkt die Anzeige der entsprechenden Bitmap links neben der ersten Spalte einer List-/ComboBox PICTURE( ListIndex ) = "xyz.bmp"bewirkt die Anzeige der entsprechenden Bitmap links neben der ersten Spalte einer List-/ComboBox bei der ComboBox werden die BMPs nur in der aufgeklappten Liste angezeigt bei der ComboBox werden die BMPs nur in der aufgeklappten Liste angezeigt fehlende BMPs erzeugen keinen Fehler fehlende BMPs erzeugen keinen Fehler GENERAL-Felder können im Widerspruch zur Dokumentation nicht(!) verwendet werden GENERAL-Felder können im Widerspruch zur Dokumentation nicht(!) verwendet werden

34 Wizards & Builders GmbH Was ist zu beachten? List-/Comboboxen sehr leistungsfähig List-/Comboboxen sehr leistungsfähig Zugriff über ID oder Index sehr aufwendig Zugriff über ID oder Index sehr aufwendig Builder verfügbar Builder verfügbar Bitmapproblem Bitmapproblem

35 Wizards & Builders GmbH Vielen Dank! Das waren die Themen: Grundlagen Grundlagen Unterschiede zwischen List-/ Comboboxen Unterschiede zwischen List-/ Comboboxen Ereignisse Ereignisse Zugriff auf Einträge Zugriff auf Einträge Diverse Sonderfälle Diverse Sonderfälle

36 Wizards & Builders GmbH Wenn Fragen bestehen: Wizards & Builders Methodische Software- Entwicklung GmbH Frankfurter Str. 21b Kronberg Tel.: Fax: CIS: ,175


Herunterladen ppt "Wizards & Builders GmbH List/Comboboxen Programmierung von List- und Comboxen mit Microsoft Visual FoxPro."

Ähnliche Präsentationen


Google-Anzeigen