|
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
|
||||||
Не работают методы в BCB602.10.2013, 10:44. Показов 1455. Ответов 10
Метки нет (Все метки)
- Здравствуйте все Форумчане! Вот фрагмент кода:
- Имедж создается в этом-же классе TTmr - динамически. - Методы Select_Int(...) и Treet_Int() так-же объявляются и определяются в этом-же классе TTmr. - Все нормально компилится, собирается, запускается в работу. Но, как знают все пользующие BCB6, при запуске в работу в самой левой колонке листинга кода напротив выполняемых операторов и методов средой всегда ставится "бубочка" - маленькая синяя точка. Только на эту точку можно поставить "Точку Останова" отладчика. Так вот напротив метода Select_Int(...) такая "точечка" НЕ ПОЯВЛЯЕТСЯ ВООБЩЕ. И при работе программы этот метод - ПРОСТО ПРОПУСКАЕТСЯ! - Проверил кажется все, что связано с обработчиком - ImageMouseDown(...), методами - Select_Int(...) и Treet_Int(). Ситуация сохраняется ... - Пользователи BCB6 и подобных старых версий, может у кого возникали подобные "финты"? Может Вы выработали какие приемы, как с этим бороться или хотя-бы как-то ухватить такую ситуацию "за хвост" ...? Хотя-бы узнать, откуда это лезет ...
0
|
||||||
| 02.10.2013, 10:44 | |
|
Ответы с готовыми решениями:
10
sin и BCB6 Переход BCB6 -> XE4 Не устанавливается EhLib 3.6 на BCB6 |
|
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
|
||
| 02.10.2013, 12:10 | ||
|
0
|
||
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
| 02.10.2013, 12:23 | |
|
Поставь брекпоинт на строчку выше, если этой строчки нет, то напиши пустую (int t=0 ) и поставь на нее. Отладь по шагам и посмотри заходит в эти методы программа или нет.
1
|
|
|
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
|
||||||
| 02.10.2013, 13:06 [ТС] | ||||||
|
- _Dimon_, gumi250 все честно, значения ключей такие, что программа заведомо попадает в
ветвь кода else (в строке 21). Весь "прикол" в том, что в этой ветви else 1-й оператор (метод Select_Int(...)) СТАНОВИТСЯ НЕРАБОЧИМ. На нем нет "бубочки", на нем нельзя поставить точку останова, он не выполняется! - Попробовал перед ним поставить, как советовал gumi250, пустой оператор:
int t = 0; "бубочки" нет и точку останова поставить нельзя, и не выполняется! - Приложение теперь вроде заработало, но чинить программы с помощью пустых операторов, согласитесь, негоже. - Т.е. первый оператор в блоке else почему-то НЕРАБОЧИЙ. Интересный эффект, не знаю как за него и браться!
0
|
||||||
|
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
|
|
| 03.10.2013, 02:34 | |
|
может глупый совет, но попробуй сделать Clear и скомпилировать наново. мало ли че ...
1
|
|
|
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
|
|
| 03.10.2013, 10:01 [ТС] | |
|
- Спасибо, _Dimon_, за совет. Вы видимо имеете в виду полную перекомпиляцию проекта (Project
=> Build Project1)? Я уже делал это не раз. Иногда это действительно помогает, только не в таких случаях. Я уже уверен, что ошибка или "неточность", не знаю как там она называется, лежит где-то далеко! - Вся эта ситуация возникла после того, как я решил немного переделать вполне нормальный и надежно работающий проект. Мне не понравилось, что один из классов проекта (TTmr) очень сильно разросся. Он занимает один модуль и аж семь его расширений! Хотел выделить часть этого класса в другой класс. Ну и видно что-то наворочал. У меня уже когда-то было раза два совершенно такое-же. Тоже просто переставала работать часть кода со всеми вытекающими из этого последствиями (это хорошо заметно по все тем-же "бубочкам" во время пуска проекта). И тогда мне, не помню, по моему приходилось перебирать весь проект заново. - Я вышел на форум имея слабую надежду, что коллективный разум может быть уже выработал какие-то приемы борьбы с такими "мутными" ситуациями. Может есть какие-либо методы отладки, позволяющие выйти на причину таких "странных явлений". Народу ведь работающего в Бильдерах много. Может кто и нащупал какой "приемчик". - Ну а если нет, то прийдется вернуться к старому варианту кода и делать все медленнее, по-складам! Еще раз спасибо _Dimon_ за участие!
0
|
|
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
| 03.10.2013, 11:39 | |
|
Вообщемто если брекпоинт не ставится там где должен и выполнение ф-ций зависит от наличия пустого оператора впереди, то скорее всего это проблема не вашего кода, а среды, т.е. билдера. Тут совет один попробовать на другой машине. И если получится, то нужно переставлять среду.
1
|
|
|
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
|
|
| 03.10.2013, 14:00 [ТС] | |
|
- Спасибо gumi250, я действительно бьюсь с этой ошибкой на работе и совсем забыл, что
можно попробовать и дома... Если и дома будет то же самое, то это скорее всего даже не ошибка, а какая-то "неточность в объявлении классов", которая не ловится компилятором (ведь ни ошибок, ни, даже, предостережений - НЕТ). Даже интересно попробовать...
0
|
|
|
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
|
|
| 03.10.2013, 16:23 [ТС] | |
|
- UI, под оптимизатором Вы имеете в виду: Project => Options... => Compiler => Code optimisation =>
у меня выбрано (None) - т.е. никакой оптимизации; А Project => Options... => Pascal => Code generation => Optimization => у меня нет галочки (оптимизация не выбрана). Что касается перебрать проект заново, то видимо прийдется ... Попробую ...
0
|
|
|
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
|
|
| 07.10.2013, 11:11 [ТС] | |
|
- Пробовал мое приложение дома - все то-же. Не хочется больше терять на него время. Хорошо,
что у меня сохранился исходный код (до переделок). Сделал все заново! Разделил мой класс TTmr на две части в "безопасном", так-сказать, режиме. Все по слогам, не спеша ... Все прекрасно разделилось и работает! Жаль, что опять, как и в прежние разы, о которых я уже говорил раньше, так и не понял, - почему возникают такие "финты". Видимо действительно какие-то неточности в объявлении классов, которые не ловятся компилятором. - Спасибо Всем за участие в теме!
0
|
|
| 07.10.2013, 11:11 | |
|
Помогаю со студенческими работами здесь
11
Индикатор загруженности процессора (BCB6) Перенос проекта из BCB6 в ХЕ2 BCB6, ADO, MySQL Нужен совет! MySQL + BCB6 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|