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

Вниз

Обработка содержимого EditBox в стандартном TOpenDirDialog   Найти похожие ветки 

 
Kotik666   (2007-09-09 12:25) [0]

Когда открывается диалог выбора папок (с опцией odEditBox), то в сроке Edit забито имя последней папки, изменив которое на несуществующее диалог возвращает путь к текущей директории.
Как получить значение этой строки (для проверки на существование) или может быть есть возможность проверить наличие этого пути "силами" самого диалога?


 
Vladimir Kladov   (2007-09-09 12:56) [1]

Мне лично этот диалог ситемный вообще не нравится. Не говоря уже о тормозах, сам дизайн - просто перл на перле. Ну например, почему в момент открытия в фокусе находится кнопка OK, а не дерево. Как будто диалог открывается только для того, чтобы подтвердить выбор по умолчанию.

Насчет средств самого диаога - вроде нету. Но есть call back, у нас соответственно есть событие OnSelChanged. Вроде бы оно никак не обрабатывает содержимое edit"а, но добраться до него, в принципе можно. Взять из него текст и проанализировать еще пока диалог не закрылся. Или положить в переменную, чтобы после закрытия диалога смотреть.


 
Kotik666   (2007-09-09 23:06) [2]

Мне тоже не нравится, но какой есть...

Благодарю за совет, сейчас буду разбираться с OnSelChanged.


 
Vladimir Kladov   (2007-09-10 01:14) [3]

Есть альтернативный, DirDlgEx.


 
Kotik666   (2007-09-10 22:54) [4]

Сразу не получилось победить этот Edit...
Может есть у кого готовая реализация этого вопроса, достойного FAQ (диалог же стандартный)?


 
Compiler ©   (2007-09-12 21:59) [5]

Текст из Edit"a можно взять так:
function GetEditText(hwin:HWND):string ;
var
 l:integer; p:pchar;
begin
L:=SendMessage(hwin,WM_GETTEXTLENGTH,0,0)+1;
GetMem( p, l );
GetWindowText(hwin, p, l );
result:=p;
FreeMem( p, l );
end;


 
Kotik666   (2007-09-13 09:26) [6]

2Compiler

Благодарю!



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

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

Наверх




Память: 0.45 MB
Время: 0.049 c
15-1208171268
Kolan
2008-04-14 15:07
2008.06.01
Выложил программку для генерации скриптов MS SQL


15-1208414044
switch
2008-04-17 10:34
2008.06.01
Демо-версия


15-1208514276
Вопрос
2008-04-18 14:24
2008.06.01
Как вам картинка ? 3dsmax.


15-1208400145
Slider007
2008-04-17 06:42
2008.06.01
С днем рождения ! 17 апреля 2008 четверг


15-1208871123
No_Dead
2008-04-22 17:32
2008.06.01
Можно объяснить такую фразу в двух словах/на пальцах





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