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

Вниз

Прошу совета относительно списка файлов   Найти похожие ветки 

 
KidMan   (2002-10-17 22:50) [0]

Привет Мастера!
У меня локальные DBF файлы на каждый месяц. Нумеровка такая: 012002.dbf 022002.dbf и так далее... Первые две цифры - месяц, четыре последние - год... Мне нужно чтобы в комбобокс загружались только эти файлы (месяц год) а не какие нибудь случайные которые по идеи могут оказаться в этом каталоге... даже если у них расширение dbf...
Но главное... как сделать так, чтобы прога автоматически определяла номер месяца и года и загружала соответствующий файл когда юзер выбирает в combobox1.ItemIndex ??

Заранее благодарю!


 
MBo   (2002-10-17 23:01) [1]

findFirst,findNext, при это проверяешь, подходят ли найденные имена под твои критерии, и если да, то добавляешь в комбо.
А теперь о главном... ;)
что юзер выбирает в combobox1.ItemIndex ?????


 
KidMan   (2002-10-17 23:08) [2]

Дело в том что я очень грубо проверяю соответствие имен файлов которые должны соответствовать моему формату... Я просто использую copy и беру первые два символа а потом вторые четыре и прибавляю к ним ".dbf"... получается типа Table1.Table1Name := "часть первая" + "часть вторая" +".dbf"...
Грубо не правда ли ? Самого тошнит....

Что же касается выбора юзера... то я не понимаю... одного...
Ну вот... типа со страданиями я как то загнал в комбобокс имена нужных файлов... А как мне сделать так чтобы когда юзер выбирает например второй пункт в комбобоксе ему соответствовал именно нужный DBF файл???

Thanx...


 
Юрий Зотов   (2002-10-17 23:13) [3]

cbYear - комбобокс с годами.
cbMonth - комбобокс с месяцами (в порядке январь..декабрь).
Оба имеют стиль csDropDownList.

function TMyForm.GetFileName(Dir: string): string;
begin
with cbMonth do
begin
Result := IntToStr(ItemIndex + 1);
if ItemIndex < 9 then Result := "0" + Result
end;
with cbYear do
Result := Result + Items[ItemIndex] + ".dbf";
if Dir = "" then Dir := GetCurrentDir;
Result := IncludeTrailingBackSlash(Dir) + Result;
if not FileExists(Result) then
raise Exception.CreateFmt("File %s not found", [Result])
end;


 
KidMan   (2002-10-17 23:53) [4]

Спасибо я попробую завтра (нет под рукойдельфя чичас ((( ...)

Если что... спрошу еще раз если не против...

Еще раз сэнкс!


 
KidMan   (2002-10-18 01:45) [5]

Плииииз!


 
KidMan   (2002-10-19 22:54) [6]

Юрий
Я оказался оптимистом (( Честно говоря я мпло что понял из вашего совета... Я не понял главного - откуда взялась эта функция (TMyForm.GetFileName)... Ее надо регистрировать?
Остальное вроде понятно... вот только с TMyForm.GetFileName не разобрался... что это и с чем его едят...
Был бы очень благодарен за дополнительные сведения...
Сорри... но я всего лишь новичек... и то что очевидно вам не совсем очевидно для меня...

Заранее благодарю!


 
Юрий Зотов   (2002-10-20 01:07) [7]

Просто вызывайте эту функцию перед тем, как загрузить файл. Она либо вернет имя нужного юзеру файла (причем заведомо правильное), либо, если такого файла нет, то сгенерит ошибку и выдаст диагностическое сообщение.


 
KidMan   (2002-10-20 01:12) [8]

Вызов этой функции у меня вызывает ошибку... Когда я убираю имя формы перед GetFileName то появляются другие ошибки коипиляции...

Это может и паника но я совсем ничего не понимаю в вашем коде... ((((


 
Юрий Зотов   (2002-10-20 01:33) [9]

Объявление функции надо включить в объявление класса формы. Например, в раздел public:
public
function GetFileName(Dir: string): string;


> но я совсем ничего не понимаю в вашем коде

Плохо это, потому что код очень простой. Я могу его прокомментировать, но будет гораздо больше пользы, если Вы с помощью книги и хелпа попробуете разобрать его сами, буквально каждый знак. Думаю, что это частично получится, а что останется неясным - я готов ответить на каждый конкретный вопрос.



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

Форум: "Основная";
Текущий архив: 2002.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.011 c
6-101405
SKing
2002-08-30 08:19
2002.10.31
Соединение с сервером


6-101432
Kotik
2002-08-27 01:51
2002.10.31
Как узнать стоит ли на компе какой нибудь FireWall?


1-101282
Vint
2002-10-22 15:57
2002.10.31
Сортировка


14-101511
Nostradamus
2002-10-12 18:45
2002.10.31
Как избавится от посетителя???


14-101442
_Санёк_
2002-10-10 15:28
2002.10.31
Классный форум!!! (модераторам)





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