MSVC++ въпрос

3 отговора 153 прегледа
#1

MSVC++ въпрос

Имам диалогов прозорец с множество контроли и таблици. Само в няколко контроли данните се променят на 0,5-1сек. За да изобразявам тази промяна в
момента използвам UpdateData(FALSE) за целия диалогов прозорец. Получава се обаче непроятно премигване в другите контроли. Има ли начин да опреснявам върху екрана само определени контроли? Търсих идея в MSDN
но без успех.

Отговор
в отговор на DQ #2

Re: MSVC++ въпрос

Ами просто си направи отделна функция в която директно променяш само контролите които е нужно и викай нея вместо UpdateData.
Най-добре е да проверяваш дали стойностите са различни и само тогава да правиш промяната. Например:

void CMyDlg::MyUpdateData()
{
if (nNewVal != m_nSomeVal)
{
m_nSomeVal = nNewVal;
SetDlgItemInt(ID_SOMEID,m_nSomeVal);
}
}

Отговор
в отговор на EBD #3

Re: MSVC++ въпрос

Po-skoro pri promiana na stoinost da setva direktno kontrola bez da gi chaka nakup ...

Отговор
в отговор на Goose #4

Re: MSVC++ въпрос

Стана добре. Благодаря и на двама ви.

Отговор