Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2012, 23:08   #11
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Прик Посмотреть сообщение
А эту проблему реально можно как-то пощупать?
NewCalcWindFr.pas
кнопка расчет
Вложения
Тип файла: rar Новая папка.rar (2.38 Мб, 10 просмотров)
googl вне форума Ответить с цитированием
Старый 02.05.2012, 23:26   #12
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Несколько вопросов.
Где файл базы? Без него прога запускается, но для чистоты эксперимента, лучше этот файл иметь.
Зачем вообще нужен фрейм?
Для чего используется thread? Видно, для красоты.

Последний раз редактировалось Прик; 02.05.2012 в 23:33.
Прик вне форума Ответить с цитированием
Старый 02.05.2012, 23:37   #13
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Ну и чего вы хотите, ваш этот NewCalcFrame всему вина.
А еще раньше ваш срэд, избавтесь от него и проблемы исчезнут.
=master= вне форума Ответить с цитированием
Старый 03.05.2012, 00:20   #14
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Цитата:
Сообщение от =master= Посмотреть сообщение
Ну и чего вы хотите, ваш этот NewCalcFrame всему вина.
А еще раньше ваш срэд, избавтесь от него и проблемы исчезнут.
Полностью присоединяюсь.
Прик вне форума Ответить с цитированием
Старый 03.05.2012, 08:26   #15
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Прик Посмотреть сообщение
Полностью присоединяюсь.
что за срэд? и как мне убрав NewCalc обращаться к компоненту фрейма из процедуры?
googl вне форума Ответить с цитированием
Старый 03.05.2012, 09:00   #16
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

срэд - class(TThread)
Зачем он нужен? Практически ничего не делает.
Фрейм тоже зачем? Чем форма не угодила?
Применяете дельфийские возможности не понимая их сути.
Чтобы не было проблем, хотя бы не используйте TThread.
Применяя параллельные процессы (TThread) не нужно забывать что непосредственное обращение из процесса к визуальным компонентам главного процесса (программы) может происходить только через метод Synchronize.

Но и фрейм здесь тоже ни к чему.

Последний раз редактировалось Прик; 03.05.2012 в 09:04.
Прик вне форума Ответить с цитированием
Старый 03.05.2012, 09:04   #17
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Прик Посмотреть сообщение
срэд - class(TThread)
Зачем он нужен? Практически ничего не делает.
Фрейм тоже зачем? Чем форма не угодила?
Применяете дельфийские возможности не понимая их сути.
Чтобы не было проблем, хотя бы не используйте TThread.
Но и фрейм здесь тоже ни к чему.
поток использую для того, чтобы запустить анимацию, чтобы она не вешала форму. фрейм нужен для того, чтобы на одной форме отображались все вкладки: новый расчет, анализ и прочее. вы открывали исходники?
googl вне форума Ответить с цитированием
Старый 03.05.2012, 09:14   #18
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Открывали исходники. Поэтому и совет такой.
Вместо доп. процесса возьмите таймер и в событии таймера анимируйте свои картинки.
Если никак не можете расстаться с фреймом, оставьте. Но про доп. процессы, запускаемые через класс TThread надо бы почитать как следует.
Прик вне форума Ответить с цитированием
Старый 03.05.2012, 09:15   #19
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Прик Посмотреть сообщение
срэд - class(TThread)
Зачем он нужен? Практически ничего не делает.
Фрейм тоже зачем? Чем форма не угодила?
Применяете дельфийские возможности не понимая их сути.
Чтобы не было проблем, хотя бы не используйте TThread.
Применяя параллельные процессы (TThread) не нужно забывать что непосредственное обращение из процесса к визуальным компонентам главного процесса (программы) может происходить только через метод Synchronize.

Но и фрейм здесь тоже ни к чему.
т.е. нужно написать функцию присвоения рисунка паинтбоксу и вызывать ее с помощью Synchronize?
googl вне форума Ответить с цитированием
Старый 03.05.2012, 09:17   #20
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Прик Посмотреть сообщение
Открывали исходники. Поэтому и совет такой.
Вместо доп. процесса возьмите таймер и в событии таймера анимируйте свои картинки.
Если никак не можете расстаться с фреймом, оставьте. Но про доп. процессы, запускаемые через класс TThread надо бы почитать как следует.
так он же форму вешать будет, а мне нужно, расчет шел независимо. и потом, будет такая тема как проверка завершения процесса, если я таймером его сделаю, тоже же форма подвисать будет?
googl вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка: "Access violation at address 0045E503 in module 'Project1.exe'. Read of address 00316777. Katexxxsa Общие вопросы Delphi 1 03.10.2011 23:16
Access violation at address 004733C4 in module 'loginin.exe'. Read of address 00000048' pavellyba Общие вопросы Delphi 2 18.08.2011 10:32
Access violation at address 00447E73 in modul Project.exe. Read of address 00000057. ArtGrek Общие вопросы Delphi 40 12.03.2011 22:03
Access violation at address 00478D0E in module 'Project1.exe'. Write of address 00000000 fondreykus-1 Общие вопросы Delphi 5 27.01.2010 14:25
Ошибка: "Access violation at address 00454F01 in module 'Project1.exe'. Read of address 00000000. Fen1x Общие вопросы Delphi 8 13.10.2007 20:13