![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| santilaas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 322 Регистрация: 28.8.2005 Где: Блага Репутация: нет Всего: нет |
Привет всем
Объясню ситуацию: программно открываю Excel-файл (как оле-объект) и затем проверяю в нем одно из 255-ти полей (поле типа дата) на условие - если дата в этом поле соотвствует январю месяцу, то записываю всю строку в файл январь.xls (тоже обращаюсь к нему через оле), февралю - февраль.xls и т.д. Ход переноса строк и сведения об ошибках или их отсутствии отображаю в ячейках StringGrid вот часть кода, осуществляющая разноску строк по файлам
вопрос №1: Почему при выполнении всего этого ход переноса строк в ячейках StringGrid отображается не сразу, а только после переноса последней строки из исходного файла, тогда как в поле Memo все отображается правильно (как только перенеслась строка, в Memo сразу выводится статус и сведения об ошибках)? вопрос №2: Почему с момента запуска процедуры на выполнение и до её окочания главное окно программы становится недоступным (в том плане, что не реагирует ни на какие мои действия)? -------------------- [ |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 26 Всего: 108 |
тебя должно спасти... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| santilaas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 322 Регистрация: 28.8.2005 Где: Блага Репутация: нет Всего: нет |
Albinos_x, спасибо огромное - меня это действительно спасло, хотя, если честно, не совсем понятно, почему в поле Memo все отображается как надо, а для StringGrid-а надо Application.ProcessMessages?!
-------------------- [ |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 26 Всего: 108 |
ну во первых перирисовка окна пока обрабатывается файл и так затруднена...к тому же за проход цикла мемо должно перирисовываться 1 раз, а грид 3 раза... видимо он просто не успевал...
-------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 26 Всего: 108 |
а Application.ProcessMessages приостанавливает выполнение кода и пропускает накопившиеся сообщения... в данном случае сообщения на перерисовку грида... ну и остальные сообщения (реакции)... про которые ты писал во втором вопросе...
-------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| santilaas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 322 Регистрация: 28.8.2005 Где: Блага Репутация: нет Всего: нет |
Albinos_x, еще раз спасибо - за объяснения. Получай прибавку (+1)
-------------------- [ |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |