| 
| 
 | Вопрос # 5 222/ вопрос открыт / | 
 |  Здравствуйте!У меня есть форма в которой иногда выполняются действия при которых он временно подвисает (например читает инфо обо всех файлах на МР3 диске). На время этого обращения я хочу показывать другую форму с GIF картинкой, обозначающей "подождите". Проблема в том что пока основная форма не отвиснет, вторая не появляется или гифка не крутится. Сделал создание и показ формы из таймера на главной форме, но чтобы это работало нужно в "тормозящую" долгую функцию напихать много Application.ProcessMessage;
 Может есть какой-то другой выход?
 
|  |   Вопрос задал: AlexMPEI (статус: 1-ый класс)Вопрос отправлен: 22 апреля 2011, 17:43
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 11; последнее сообщение — 27 апреля 2011, 18:12; участников в обсуждении: 4. 
|   | Вадим К (статус: Академик), 22 апреля 2011, 17:45 [#1]:треды, треды и ещё раз ТРЕДЫ! Галочка "подтверждения прочтения" - вселенское зло. |  
|   | AlexMPEI (статус: 1-ый класс), 22 апреля 2011, 17:52 [#2]:как запихать форму в трэд я не понимаю. есть пример? Попробовал отнаследоваться от TForm и TThread одновременно - Delphi меня послал. |  
|   | Вадим К (статус: Академик), 22 апреля 2011, 18:20 [#3]:Во первых, наследоваться от двух одновременно в делфи нельзя, да и не нужно. Форма-тред - это бардак в квадрате. Делайте себе поиск в треде, форма для этого ему не нужна. Если же треду нужно что то выводить на форму, то можно использовать к примеру SendMessage или делфовские примитивы синхронизации. О том, как работать с тредом, можно подсмотреть в моей статье Скачиваем файлы из интернета Галочка "подтверждения прочтения" - вселенское зло. |  
|   | Егор (статус: 10-ый класс), 22 апреля 2011, 18:24 [#4]: Цитата (AlexMPEI): иногда выполняются действия при которых он временно подвисает вот это и запихать в тред
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | min@y™ (статус: Доктор наук), 22 апреля 2011, 20:17 [#5]:Охренеть! Вы сговорились, штоли? Я сёдня написал тред для поиска файлов. Могу подарить исходник для ознакомления. Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | AlexMPEI (статус: 1-ый класс), 23 апреля 2011, 01:11 [#6]:подари, пожалуйста |  
|   | min@y™ (статус: Доктор наук), 23 апреля 2011, 09:03 [#7]: Цитата (AlexMPEI): подари, пожалуйста  Код остался на работе. В понедельник я уезжаю в командировку, вернусь во вторник вечером. До среды подождёшь?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | AlexMPEI (статус: 1-ый класс), 24 апреля 2011, 01:06 [#8]:конечно подожду |  
|   | min@y™ (статус: Доктор наук), 27 апреля 2011, 15:26 [#9]: Цитата (AlexMPEI): конечно подожду  Ну, если это ещё актуально, то вот.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | AlexMPEI (статус: 1-ый класс), 27 апреля 2011, 16:38 [#10]:спасибо - отличный тред. только я еще, с вашего позволения, добавлю событие об окончании поиска   |  
|   | min@y™ (статус: Доктор наук), 27 апреля 2011, 18:12 [#11]: Цитата (AlexMPEI): спасибо - отличный тред. только я еще, с вашего позволения, добавлю событие об окончании поиска  Я тя умоляю! OnTerminate жеж есть! Это ж тред, блин!
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |