Announcement

Collapse
No announcement yet.

Alle Favoriten in Combobox anzeigen lassen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Alle Favoriten in Combobox anzeigen lassen

    Ich möchte dass alle Einträge im Ordner Favoriten in einer Combobox angezeigt werden. Die Einträge sollen in der Form "http://www.derentwickler.de" angezeigt werden. Auf Buttonclick soll das Programm selbständig den Angegebenen Ordner durchsuchen und die Einträge in der Combobox aktualisieren.
    Wie kann ich dass am besten realisieren?
    Am besten mit Beispiel, bin Anfänger.

    Danke

  • #2
    Hallo,

    für <b>welche</b> Windows-Version wird dies benötigt? Ab Windows 98/Windows 2000 steht dazu die Win32-API-Funktion <b>SHAutoComplete</b> zur Verfügung, die mit einer einzigen Programmzeile aufgerufen werden kann

    Comment


    • #3
      Es handelt sich um Windows 98 und Windows 2000.

      Können Sie mir bitte ein kleines Beispiel dazu geben? Ich verstehe das nicht so ganz.

      Dank

      Comment


      • #4
        Hallo,

        das folgende Beispielprojekt stammt aus der Entwicklerkonferenz-Session <b>Neues im Windows 2000-API</b>. Im Programm ist eine TEdit und eine TCombobox-Instanz. Immer dann, wenn der Benutzer dort einen Dateinamen einträgt, füllt Windows automatisch eine Auswahlliste mit allen dort vorhandenen Dateien (AutoComplete). Neben dem Dateisystem wird auch das URL-Verzeichnis unterstützt, wenn die entsprechenden Flags (SHACF_URLALL etc.) verwendet werden.
        <pre>
        { ************************************************** *******************
        Autor : Andreas Kosch
        Compiler : Delphi 5 UpdatePack#1
        Betriebssystem : Windows 2000
        Datum : 27.08.2000
        Beschreibung : SHAutoComplete
        ************************************************** ******************** }

        unit IAutoCompleteTestFrm;

        interface

        uses
        Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
        StdCtrls, ComCtrls;

        type
        TForm1 = class(TForm)
        Edit1: TEdit;
        StatusBar1: TStatusBar;
        Label1: TLabel;
        Button1: TButton;
        ListBox1: TListBox;
        ComboBox1: TComboBox;
        procedure FormCreate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        private
        { Private-Deklarationen }
        FHandle : HWND;
        public
        { Public-Deklarationen }
        end;

        var
        Form1: TForm1;

        implementation

        {$R *.DFM}

        // shlwapi.h - Interface for the Windows light-weight utility APIs
        //
        // SHAutoComplete
        // hwndEdit - HWND of editbox, ComboBox or ComboBoxEx.
        // dwFlags - Flags to indicate what to AutoAppend or AutoSuggest
        // for the editbox.

        uses ComObj, CommCtrl;

        const
        SHACF_DEFAULT = 0;
        SHACF_FILESYSTEM = 1;
        SHACF_AUTOSUGGEST_FORCE_ON = $10000000;
        SHACF_AUTOAPPEND_FORCE_ON = $40000000;

        function SHAutoComplete(hWndEdit : HWND;
        dwFlags: DWORD): HRESULT; stdcall;
        external 'Shlwapi.dll';

        procedure TForm1.FormCreate(Sender: TObject);
        begin
        OleCheck(SHAutoComplete(Edit1.Handle,
        SHACF_AUTOAPPEND_FORCE_ON or SHACF_FILESYSTEM));
        ComboBox1.HandleNeeded;
        FHandle := GetWindow(ComboBox1.Handle, GW_CHILD);
        OleCheck(SHAutoComplete(FHandle,
        SHACF_AUTOAPPEND_FORCE_ON or SHACF_FILESYSTEM));
        end;

        procedure TForm1.Button1Click(Sender: TObject);
        begin
        ListBox1.Items.Add(Edit1.Text);
        Edit1.Text := '';
        end;

        end.
        </pre&gt

        Comment

        Working...
        X