Domanda

Ho un CRichEditCtrl, e un algoritmo funziona sui suoi contenuti in-place, scorrendo i contenuti e apportare modifiche. Questo sembra causare ri-paaint ogni volta, che provoca sfarfallio e un tempo notevole per completare l'operazione, soprattutto se il controllo inizia a scorrere. Mi chiedevo se c'è un modo pulito per me per fermarlo ridipingere per un periodo. In realtà è una sottoclasse personalizzata di CRichEditCtrl in uso in modo stavo pensando qualcosa del tipo:

void MyCustomEditCtrl::DoAlgorithm()
{
 enableRepaint(false);
 ...
 //to the actual work
 ...
 enableRepaint(true);
}

Qual è l'approccio più pulita? Un gestore personalizzato on-vernice, che non fa nulla quando un'operazione è in corso? O può ridipingere effettivamente essere disattivato?

È stato utile?

Soluzione

Non ho mai usato la funzione, ma sembra che si desidera guardare CWnd :: SetRedraw .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top