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

Вниз

Особенности 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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.01 c
2-1148639361
Туч
2006-05-26 14:29
2006.06.11
какой выбрать драйвер/сервер для базы данных


2-1148540767
_RusLAN
2006-05-25 11:06
2006.06.11
Динамическое создание фреймов. Acces Violation;


2-1148569160
Atamansha
2006-05-25 18:59
2006.06.11
TStringGrid


1-1146261438
Sergei0
2006-04-29 01:57
2006.06.11
Русские имена каталогов и ParamStr


15-1147127757
Сорс
2006-05-09 02:35
2006.06.11
Помогите найти ошибку в коде?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский