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

Вниз

Обработка содержимого 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.013 c
15-1208425654
Динис_ИС
2008-04-17 13:47
2008.06.01
Список городов мира


15-1208288161
ProgRAMmer Dimonych
2008-04-15 23:36
2008.06.01
Книги по поиску и индексации


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


15-1208483714
Slider007
2008-04-18 05:55
2008.06.01
С днем рождения ! 18 апреля 2008 пятница


15-1208327498
palva
2008-04-16 10:31
2008.06.01
Вот как надо на си шарп писать