Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - filterindex bei filtercombobox
sexy_betty - So 19.11.06 18:24
Titel: filterindex bei filtercombobox
eine kleine frage. wie setze ich den Filter Index bei filtercomboboxen?
also wenn "textdateien" das dritte item ist, ich die combobox so setzen kann, dass er textdateien filtert.
mit filtercombobox.itemindex:=3; schlug ich fehl, da er so zwar "textdateien" angezeigt hat, der filter selbst in der filelistbox jedoch unverändert blieb! :(
Moderiert von
Christian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am So 19.11.2006 um 22:39
Lannes - So 19.11.06 23:18
Titel: Re: filterindex bei filtercombobox
Hallo,
sexy_betty hat folgendes geschrieben: |
...
also wenn "textdateien" das dritte item ist
...
filtercombobox.itemindex:=3; schlug ich fehl... |
das dritte Item hat den Index 2!
Der ItemIndex ist
0-basierend.
raiguen - Mo 20.11.06 01:42
Moin :-)
es gibt zwei Möglichkeiten, die Maske einer FileListBox auf den Filter einer FilterCombobox einzustellen:
1. Direkte 'Verknüpfung' zwischen FilterComboBox und FileListBox
Delphi-Quelltext
1: 2: 3:
| ... FilterComboBox1.FileList := FileList1; ... |
Das kann schon im OI bei der FilterComboBox eingestellt werden ;-)
Das Ganze bewirkt eben das, was man möchte: auswählen eines Filters (bspw.
Textdateien | *.txt) und entsprechend stellt sich die 'Maske' (=Filter) der FileListBox auf den ausgewählten Filter.
2.Möglichkeit: Die in 1. genannte Verknüpfung offen lassen (also nix zuweisen) und im OnChange() der FilterComboBox folgender Einzeiler
Delphi-Quelltext
1: 2: 3: 4:
| procedure FilterComboBox1Change(Sender: TObject); begin FileListBox1.Mask := FilterComboBox1.Mask; end; |
FilterComboBox1.Mask gibt immer die Maske (z.b.
*.txt) zurück, während FilterComboBox1.Items[xyz] den 'Klartext' (zb.
Textdateien ) zurückgibt. Alles nachzulesen bzw zu 'erarbeiten' aus der OI zum Stichwort
TFilterComboBox und hier die Eigenschaften FileList, Filter, Mask ;-)
sexy_betty - Mo 20.11.06 17:00
@Lannes: tut mir leid, hatte ich aus dem Kopf getippt --> vertan --> daran lag der Fehler nicht.
Ich hatte
Delphi-Quelltext
1: 2: 3:
| ... FilterComboBox1.FileList := FileList1; ... |
benutzt, und das ging ja auch wunderbar, solange man den Filter mit der Maus auswählte. Ich wollte das ja aber eben durch code machen, beispielsweise bei einem ButtonClick. Und das schlug fehl.
Änderte sich auch nicht mit
Delphi-Quelltext
1: 2: 3: 4:
| procedure FilterComboBox1Change(Sender: TObject); begin FileListBox1.Mask := FilterComboBox1.Mask; end; |
Das hat mir allerdings die Augen geöffnet. Wenn man das Item setzt, sollte man auch die Maske setzen.
Delphi-Quelltext
1: 2:
| filtercombobox1.ItemIndex:=2; filelistbox1.Mask:=filtercombobox1.Mask; |
ist also des Rätsels Lösung. Danke für die Hilfe, hat mir sehr geholfen :) --> erledigt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!