Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];

Вниз

Vista OpenSaveDialog   Найти похожие ветки 

 
Thaddy   (2006-10-20 16:02) [0]

Here"s another Vista thing:


function OpenSaveFileDialog(Parent: PControl; const DefExt, Filter, InitialDir, Title: string; var FileName: string;
 MustExist, OverwritePrompt, NoChangeDir, DoOpen: Boolean): Boolean;
var
 ofn: TOpenFileName;
 szFile: array[0..MAX_PATH] of Char;
 tmp: string;
begin
 Result := False;
 if Winver > WvXP then
 begin
   FillChar(ofn, SizeOf(TOpenFileName), 0);
   with ofn do
   begin
     lStructSize := SizeOf(TOpenFileName);
     hwndOwner := Parent.Handle;
     lpstrFile := szFile;
     nMaxFile := SizeOf(szFile);
     if (Title <> "") then
       lpstrTitle := PChar(Title);
     if (InitialDir <> "") then
       lpstrInitialDir := PChar(InitialDir);
     StrPCopy(lpstrFile, FileName);
     tmp := Filter;
     while strreplace(tmp, "|", #0) do
       ; //nothing but replace
     lpstrFilter := PChar(tmp + #0#0);
     if DefExt <> "" then
       lpstrDefExt := PChar(DefExt);
   end;

   if MustExist then
     ofn.Flags := ofn.Flags or OFN_FILEMUSTEXIST;

   if OverwritePrompt then
     ofn.Flags := ofn.Flags or OFN_OVERWRITEPROMPT;

   if NoChangeDir then
     ofn.Flags := ofn.Flags or OFN_NOCHANGEDIR;

   if DoOpen then
   begin
     if GetOpenFileName(ofn) then
     begin
       Result := True;
       FileName := szFile;
     end;
   end
   else
   begin
     if GetSaveFileName(ofn) then
     begin
       Result := True;
       FileName := szFile;
     end;
   end;
 end;
end;
</code


 
MTsv DN ©   (2006-10-21 09:25) [1]

> Here"s another Vista thing
Works fine :)

P.S. Only was error "Unknown identefier" in the line "ofn: TOpenFileName;"... I wrote "uses CommDlg"...and that"s all...
P.P.S. I don"t know why the definition "TOpenFileName" in KOL.PAS not determing...


 
Thaddy   (2006-10-23 10:25) [2]

Because kol.pas references commdlg for OpenSaveDialog :)



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.04 c
2-1179416636
Kostafey
2007-05-17 19:43
2007.06.10
Запрет на редактирование/удаление записи по значению


4-1160821750
rll-progr
2006-10-14 14:29
2007.06.10
Управление окном другого приложения


2-1179841159
Sonia
2007-05-22 17:39
2007.06.10
Как показать на экран форму вперед главной


2-1179386732
News
2007-05-17 11:25
2007.06.10
Сетевая игрушка


11-1160673450
ANTPro
2006-10-12 21:17
2007.06.10
Easy Debug





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский