Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.11;
Скачать: CL | DM;

Вниз

Особенности OpenSaveDialog_Extended   Найти похожие ветки 

 
dvk   (2005-09-28 17:48) [0]

Почему-то при попытке использовать свой шаблон с OpenDialog"oм пропадает левое окошко диалога с возможностью быстрого перехода по избранным папкам (мой компьютер, мои документы и т.д.).
Не мог бы кто-нибудь объяснить - почему?


 
dvk   (2005-10-04 08:15) [1]

Нашёл в чём было дело. Оказалось, что структура TOpenFilename может иметь разную длину (параметр lStructSize) - 76 либо 88 байт. Я так понял, что исторически сначала было 76 байт, а с появлением новых версий Windows добавилось 3 новых параметра -
pvReserved: Pointer;
dwReserved: DWORD;    
FlagsEx: DWORD;
  Пока не используются шаблоны (Templates), можно смело ставить lStructSize равным 76 - будет показываться правильное окно (в Win98 - обычное, в WinMe и выше - с избранными папками). Но если используются шаблоны, то необходимо ставить lStructSize равным 88, иначе избранных папок слева не будет.
  В Delphi7 для этого стоит дополнительная проверка:
   if (Win32MajorVersion >= 5) and (Win32Platform = VER_PLATFORM_WIN32_NT) or { Win2k }
   ((Win32Platform = VER_PLATFORM_WIN32_WINDOWS) and (Win32MajorVersion >= 4) and (Win32MinorVersion >= 90)) then { WinME }
     lStructSize := SizeOf(TOpenFilename)
   else
     lStructSize := SizeOf(TOpenFilename) - (SizeOf(DWORD) shl 1) - SizeOf(Pointer); { subtract size of added fields }

  Соответственно, декларация структуры TOpenFilename используется расширенная (с тремя дополнительными параметрами). Неплохо бы и в KOL сделать то же самое, иначе избранные папки будут и дальше пропадать с шаблонами. На сегодняшний момент lStructSize в KOL устанавливается в фиксированное значение - 76.


 
Vladimir Kladov   (2005-10-04 17:47) [2]

спасибо, поправлю в следующем выпуске (наверное, уже в выходной, опять еще кое-что есть - RepeatInterval для BitBtn поправить удалось, т.е. есть уже 2 полезных изменения).


 
GMax   (2005-10-04 22:20) [3]

упс, ошибся темой, вот здесь ещё необходимое исправление для KOL
http://delphimaster.net/view/11-1128422776/



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

Текущий архив: 2006.06.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
15-1148028907
jen
2006-05-19 12:55
2006.06.11
Delphi, не могу сделать отчет сложной шахматки. Журнал ордер


15-1147695056
Slava812
2006-05-15 16:10
2006.06.11
Время Windows XP


15-1148038665
Pazitron_Brain
2006-05-19 15:37
2006.06.11
Что думаете об MMORPG?


15-1147636626
Gero_
2006-05-14 23:57
2006.06.11
Вопрос к пользователям клиентских программ для форума


3-1145477922
Vasilisk
2006-04-20 00:18
2006.06.11
TIBDataSet.Refresh