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

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.033 c
6-1089416032
Алекс А
2004-07-10 03:33
2004.09.26
Как в TWebBrowser е включить бэкспэйс, чтобы возвращаться на


1-1094589457
ilop
2004-09-08 00:37
2004.09.26
Масссссивы в record


3-1093866563
Sheriff
2004-08-30 15:49
2004.09.26
Firebird, execute procedure


6-1090318102
OmeGA[11]
2004-07-20 14:08
2004.09.26
Как перехватить запрос по 80 порту


1-1094657252
maksim
2004-09-08 19:27
2004.09.26
Распечатка отчетов





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