Главная страница
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.046 c
1-1146724669
Oljas
2006-05-04 10:37
2006.06.11
А можно ли , передать указатель на массив (SendMessage) ...


8-1134483031
calmterror
2005-12-13 17:10
2006.06.11
Визуализация звука


2-1148536009
ttt_111
2006-05-25 09:46
2006.06.11
Работа с DBGrid.


9-1130503651
Булат Шакиров
2005-10-28 16:47
2006.06.11
Решил попробовать UnDelphiX. При установке на Delphi 7 дает ошибк


2-1148564074
AversFm
2006-05-25 17:34
2006.06.11
Ув. мастера. Помогите разобраться с группировкой