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

Вниз

TOpenDialog   Найти похожие ветки 

 
Gepard ©   (2004-09-08 11:10) [0]

Вопрос-то простецкий - как сделать неактивной кнопку "Открыть" в зависимости, скажем, от размера выбранного файла?


 
Семен Сорокин ©   (2004-09-08 11:20) [1]

ответ тоже не сложен - написать свой TOpenDialog


 
Gepard ©   (2004-09-08 11:26) [2]

ну видится мне два варианта по такому случаю - наследоваться от Subj или писать все ручками(выбор файлов, валидность и т.д.) В первом случае не знаю как получить указатель на кнопку, второй - долго и ..
Наследник уже есть - как достучаться до кнопки?

P.S.
В этом всем фигурирует какой-то Template


 
TUser ©   (2004-09-08 11:31) [3]

> наследоваться от Subj
Это вряд ли - TOpenDialog инкапсулирует соотв. диалог из апи. А он этого вроде не умеет.


 
Mim1 ©   (2004-09-08 17:24) [4]

Вешайте сообщение что размер файла слишком велик, и запускайте снова диалог выбора файла. Проще для вас, и понятнее для пользователя. А от представляете как он будет недоумевать когда при выделении файла кнопка станет неактивной.


 
MU ©   (2004-09-08 17:28) [5]

можно еще отфильтровать файлы неподходящего размера
см. property OnIncludeItem: TIncludeItemEvent


 
PVOzerski ©   (2004-09-08 17:32) [6]

До кнопки Open и прочих элементов достучаться-то просто. Берем хэндл окошка диалога ( GetParent(OpenDialog1.Handle) - именно так!) и перебираем контролы, мнэ... через EnumChildWindows. Так можно и список в текущем каталоге файлов вытянуть, и кнопку задизэйблить. Естественно, хак этот придется делать из отдельного потока. Правда, как придется запрещать пользователю ввести имя файла вручную. Я бы обиделся, пожалуй ;^). Лучше уж отругать пользователя сообщением "Слишком большой файл" после закрытия диалога. IMHO.


 
GEN++ ©   (2004-09-08 19:36) [7]

>[6]
Именно так, копка "Open/Открыть"  стоит 8-й в
списке дочерних окон. Кстати, если список файлов доступен,
то из него можно исключить "ненужные" файлы - тогда и
кнопку "гасить" не придется.


 
Gepard ©   (2004-09-08 20:05) [8]

2 PVOzerski & GEN++
Спасибо огромное! В следующей версии так и сделаю - сейчас вывешиваю табличку "Плохой файл" после закрытия диалога (2 Mim1)

Дело в том, что это открытие файлов формата HPGL, параметры которого не должны превышать определенных значений. Есть предпросмотр и там кроме дизэйбленной кнопки "Open" светится баннерок, если файл не подходит. Но нажать-то случайно все равно смогут, впрочем, как и ввести имя файла врукопашную (опять спасибо PVOzerski - не учел :).

Спасибо всем!



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

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

Наверх




Память: 0.48 MB
Время: 0.044 c
1-1095056606
П7
2004-09-13 10:23
2004.09.26
Помогите с TStream


4-1092375374
RDen
2004-08-13 09:36
2004.09.26
Как сделать, чтобы шапка формы в XP выглядела в классическом виде


4-1092116602
Delphi5.01
2004-08-10 09:43
2004.09.26
Как получить изображение рабочего стола ...


4-1092305325
Sur
2004-08-12 14:08
2004.09.26
ParamStr(X)


1-1094676387
Паша555
2004-09-09 00:46
2004.09.26
Узнать Дату