Главная страница
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.03 c
9-1131295547
Friendship
2005-11-06 19:45
2006.06.11
Помогите пожалуйста разрешить одну проблему


2-1148297951
Николай Владимирович
2006-05-22 15:39
2006.06.11
=> Странная штука с TreeView, не проходи мимо


2-1148412478
chizra
2006-05-23 23:27
2006.06.11
ошибка при записи в файл функцией FileWrite...


2-1148826063
Мурзилка
2006-05-28 18:21
2006.06.11
косяк с дэлфи


15-1147670570
Ega23
2006-05-15 09:22
2006.06.11
С Днём рождения! 15 мая