TDriveComboBox — Laufwerke und Orte

Eine TComboBox mit den Einstiegspunkten des Dateisystems — unter Windows die Laufwerke, sonst die üblichen Orte. Sie kann eine TDirectoryListBox mitführen.

Unit: vega.filectrls · Basis: TComboBox

Alle Steuerelemente · Klassenbaum · Guide: Komponenten


Vererbung

Kette: TComponentTControlTComboBoxTDriveComboBox

Direkte Nachfahren: keine — diese Klasse wird nicht weiter abgeleitet.

Quelle: vega/filectrls.lyx


Verwendung

var dc: TDriveComboBox := new TDriveComboBox();
dc.SetBounds(8, 8, 200, 24);
dc.DirList := verzeichnisliste;     // wandert mit
dc.OnDriveChange := OrtGewechselt;
dc.SetParent(f);


Besonderheiten

  • Angezeigter Name und Pfad sind getrennt. Die Liste zeigt kurze Namen, intern steht der lange Pfad daneben — deshalb liest man das Ergebnis nicht aus Items, sondern über die Klasse.
  • DirList ist die Kopplung zur Verzeichnisliste, wie FileList eine Ebene tiefer.

Eigenschaften

Alle Eigenschaften, auch die geerbten.

Name Typ Bedeutung Herkunft
ComponentState int64 Zustand als Bitmaske (csLoading, csDestroying …) TComponent
ComponentStyle int64 Stil als Bitmaske; Vorgabe csInheritable TComponent
Name pchar Name der Komponente — für FindComponent und beim Laden aus LFM TComponent
OwnedComponents TObjectList Die Komponenten, die DIESER gehoeren. Delphis Components[]. Zeigerliste, keine Kopien: TObjectList hält int64-Adressen TComponent
Owner TComponent Wer diese Komponente wegraeumt. Nicht der Elternteil im Zeichenbaum — das ist bei TControl `Parent` TComponent
Tag int64 Freier Wert für eigene Zwecke; die Bibliothek fasst ihn nicht an TComponent
AutoComplete bool Beim Tippen den ersten passenden Eintrag ergaenzen TComboBox
AutoDropDown bool Beim Tippen die Liste aufklappen TComboBox
DropDownCount int64 Wieviele Zeilen die aufgeklappte Liste hoechstens zeigt TComboBox
DroppedDown bool Ob die Liste gerade aufgeklappt ist TComboBox
Editor TEdit Das Eingabefeld der tippbaren Fassung. Bei CS_DROPDOWNLIST bleibt es unsichtbar stehen — es wird einmal gebaut und nicht bei jedem Stilwechsel neu TComboBox
ItemIndex int64 Ausgewählter Eintrag, -1 = keiner TComboBox
Items TStringList Kind Nummer i TComboBox
Sorted bool Wie in Delphi: Text ist das, was im Feld steht. Bei einer reinen Auswahlliste ist das der gewaehlte Eintrag; später, wenn die Liste auch tippbar wird, kann es davon abweichen TComboBox
Style int64 Auswahlliste oder tippbares Feld TComboBox
TopIndex int64 Erster sichtbarer Eintrag TComboBox
DirList TDirectoryListBox Die Verzeichnisliste, die mitwandert eigen

Methoden

Alle Methoden, auch die geerbten.

Signatur Zweck Herkunft
ClearState(bits: int64): void Zustandsbits löschen TComponent
ComponentCount(): int64 Anzahl der eigenen Komponenten TComponent
ComponentIndex(): int64 Delphis ComponentIndex: der eigene Platz in der Liste des Besitzers TComponent
Components(index: int64): TComponent Eigene Komponente an dieser Stelle TComponent
Destroy(): void Raeumt die eigene Liste ab, aber NICHT die Einträge — welche Komponenten ihre Besitztuemer mitnehmen, entscheidet die Ableitung über DestroyComponents() TComponent
DestroyComponents(): void Baut die Besitztuemer ab. Von hinten, weil jedes Destroy() sich selbst aus der Liste austraegt TComponent
FindComponent(name: pchar): TComponent Sucht unter den EIGENEN Komponenten, eine Ebene tief — wie in Delphi TComponent
GetName(): pchar Namen lesen TComponent
GetNamePath(): pchar Der eigene Name. Delphi hängt bei Unterkomponenten den des Besitzers davor; Vega hat keine, also ist es der Name selbst TComponent
GetTag(): int64 Tag lesen TComponent
HasState(bits: int64): bool Sind diese Zustandsbits gesetzt TComponent
InitComponent(): void Kein Konstruktor: lyxc vererbt Konstruktoren nicht, jede Ableitung ruft InitComponent() im eigenen Create() TComponent
InsertComponent(c: TComponent): void Komponente in Besitz nehmen; ein bisheriger Besitzer gibt sie ab TComponent
RemoveComponent(c: TComponent): void Komponente aus dem Besitz nehmen TComponent
SetName(v: pchar): void Setzt Name TComponent
SetState(bits: int64): void Zustand setzen TComponent
SetTag(v: int64): void Setzt Tag TComponent
Add(s: pchar): int64 Einen Eintrag aufnehmen; mit Sorted an der richtigen Stelle TComboBox
ButtonWidth(): int64 Breite des Aufklapp-Knopfes rechts TComboBox
Clear(): void Delphis Clear leert den TEXT, nicht die Liste — dafuer gibt es ClearItems TComboBox
ClearItems(): void Alle Einträge entfernen TComboBox
CloseUp(): void Liste zuklappen TComboBox
Count(): int64 Zahl der Einträge TComboBox
Create(): void Anlegen; new TDriveComboBox() TComboBox
Delete(index: int64): void Eintrag entfernen TComboBox
Destroy(): void Gibt eigene Ressourcen frei TComboBox
DropDown(): void Liste aufklappen TComboBox
DropHeight(): int64 Höhe der aufgeklappten Liste TComboBox
DropIndexAt(y: int64): int64 Zeile unter einer Position in der aufgeklappten Liste, oder VEGA_NO_ITEM TComboBox
DropRect(): TRect Das Rechteck der aufgeklappten Liste, in eigenen Koordinaten. Es liegt UNTER dem Control. Einmal ausgerechnet, weil Zeichnen und Treffertest sonst zwei Rechnungen für dasselbe Rechteck … TComboBox
Editable(): bool Ob der Text bearbeitet werden darf TComboBox
FindPrefix(prefix: pchar, ab: int64): int64 Ersten Eintrag mit diesem Anfang suchen. -1, wenn keiner passt TComboBox
ItemHeight(): int64 Höhe eines Eintrags TComboBox
MaxLength(): int64 Liest MaxLength TComboBox
SelLength(): int64 Länge der Auswahl, in Zeichen TComboBox
SelStart(): int64 Anfang der Auswahl, in Zeichen TComboBox
SelTextTo(dst: TTextBuffer): void Schreibt den ausgewählten Text nach dst TComboBox
SelectAll(): void Alles auswählen TComboBox
Selected(): pchar Die gewählte Farbe TComboBox
SetMaxLength(v: int64): void Setzt MaxLength TComboBox
SetSelText(s: pchar): void Ersetzt die Auswahl durch s TComboBox
SetSelection(start: int64, laenge: int64): void Auswahl auf start mit laenge setzen TComboBox
SetSorted(v: bool): void Setzt Sorted TComboBox
SetStyle(v: int64): void Setzt Style TComboBox
SetText(s: pchar): void Den Text im Feld setzen. Trifft er einen Eintrag, wandert auch die Auswahl mit — so wie Delphi es bei einer Zuweisung an Text macht TComboBox
SetTextHint(s: pchar): void Setzt den Platzhaltertext für das leere Feld TComboBox
Text(): pchar Der Text im Feld — bei einer Auswahlliste der gewaehlte Eintrag, bei der tippbaren Fassung das, was dort steht TComboBox
Create(): void Anlegen; new TDriveComboBox() eigen
Destroy(): void Gibt eigene Ressourcen frei eigen
DriveCount(): int64 Zahl der Einstiegspunkte eigen
PathOf(index: int64): pchar Pfad des Eintrags Nummer i eigen
Refresh_(): void Die möglichen Ausgangspunkte einsammeln. Was es nicht gibt, kommt nicht in die Liste — ein Eintrag, der ins Leere führt, ist schlimmer als ein fehlender eigen
SelectedPath(): pchar Pfad des gewählten Eintrags eigen
SetDirList(dl: TDirectoryListBox): void Setzt DirList eigen

Ereignisse

Name Typ Wann Herkunft
OnChange TNotifyEvent Feuert bei jeder Änderung der Auswahl — Delphi trennt hier zwischen OnChange (Text) und OnSelect (Klick in der Liste). Beides zu haben ist wichtiger als die feine Unterscheidung TComboBox
OnCloseUp TNotifyEvent Die Liste wurde zugeklappt TComboBox
OnDrawItem TDrawItemEvent Selbst gezeichnete Einträge — auch für den geschlossenen Teil, der dann ODS_COMBOBOXEDIT im Zustand hat. 0 = die Vorgabe zeichnet TComboBox
OnDropDown TNotifyEvent Die Liste wurde aufgeklappt TComboBox
OnSelect TNotifyEvent Ein Eintrag wurde ausgewählt TComboBox
OnDriveChange TNotifyEvent Ein anderer Ort wurde gewählt eigen

Letzte Aktualisierung: 2026-09-05 — Seite neu angelegt; erhoben aus vega/filectrls.lyx im Repo lyx-vcl.