Jak włączyć Overload dla SelectDirectory

0

Gdy chce wywołać opcja funkcji SelectDirectory takie jak sdShowEdit lub sdNewFolder, pojawia mi się błąd:
[DCC Error] Unit1.pas(218): E2250 There is no overloaded version of 'SelectDirectory' that can be called with these arguments

Odpowiedzią pomocy Delphi jest:

http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/cm_no_overload_xml.html

Tylko jak włączyć overload tej funkcji?

0

Jeżeli chcesz pokazać okienko do wyboru katalogu to polecam zapoznać się z tym gotowcem: Dialog do wyboru katalogu jednak pisałem go dawno i wtedy jeszcze nie chciałem zgłębiąć WinAPI dopiero od czasu napisania kilku programów w WinAPI korzystam z tego modułu, który dołączyłem do tego posta. Jest tam prosta w użyciu funkcja FolderBrowseDialog. A kod możesz sobie dostosować do swoich potrzeb. Powinno to Tobie również pomóć w ogarnięciu Twojego problemu.

0

Cimak masz rację nie wiem co to jest overload poza tym co napisałem wyżej, dla mnie to wygląda na rozszerzenie właściwości funkcji.
Kod:

SelectDirectory('Wybierz katalog do zapisania plikudanych',
       'D:\', SelectedDir,sdShowEdit,sdNewFolder) 

Gdy usunę sdShowEdit i sdNewFolder funkcja działa prawidłowo. Jeśli te opcje są wyrzuca błąd E2250. Nawet gdy próbuje użyć kodu z przykładu tj.

 
var
  Directory: String;
  Options: TSelectDirOpt;
begin
  Directory:= 'C:\Windows';
  if SelectDirectory(Directory, Options, 0) then
    //zdarzenie które wykona się po naciśnięciu przycisku OK
    ShowMessage('Wybrano folder: ' + Directory);
  else
    //zdarzenie które wykona się po naciśnięciu przycisku Anuluj
    ShowMessage('Nie wybrano żadnego katalogu.');
end;

Także wyświetla błąd E2250

0

Trochę Ci się pomyliło, bo pomieszałeś klasę(?) z parametrami funkcji.

Zamiast:
SelectDirectory('Wybierz katalog', 'C:\', SelectedDir, sdShowEdit, sdNewFolder)

zastosuj:
SelectDirectory('Wybierz katalog', 'C:\', SelectedDir, [sdShowEdit, sdNewFolder])

0

to tak dla zrozumienia co mowi blad kompilatora: Overload

0

Przed chwilą przypadkiem znalazłem okienko nie wymagające dodatków i mające wszystkie funkcje tj. Nowy folder, możliwość wyboru mój komputer i lokalizacji sieciowych, a także prosty i jasny opis użycia:
PromptForFileName

Do tego może przydać się też jakby kompilator grymasił:
StringToWideChar

1 użytkowników online, w tym zalogowanych: 0, gości: 1