так, а если 20, а потом 0? Просто подозрительная кореляция с инициализируемым в конструкторе значением...
А, и вот ещё что: проверь типы.
Код:
void __fastcall TExtProgressBar::SetProgress(bool value)
{
if(value!=FProgress)
{
FProgress=value;
//.............
Paint();
}
}
В C++ тип выражений приводится к типу результата выполнения предыдущего оператора, поэтому это следует понимать как:
Код:
bool value = ...;
if (value != bool(FProgress)) {...}
value не равно нулю, значит равно true, FProgress - то же самое. Не будет выполняться. Странно только, что нулю не присвоилось (в дизайнере). А что если MessageBox везде понавставлять? как блок отрабатывает то?