MFC: Y at-il un événement pour détecter lorsqu'une fenêtre dérivée CDockablePane a été ouverte, soit en faisant glisser ou de montrer?

StackOverflow https://stackoverflow.com/questions/4453410

Question

Je veux retarder l'initialisation d'une fenêtre dérivée CDockablePane jusqu'à ce que la fenêtre est réellement affichée. Si la fenêtre est simplement accosté alors WM_SHOWWINDOW est assez efficace, mais lorsque la fenêtre est en AutoHideMode WM_SHOWWINDOW est imprévisible et je ne vois pas un événement qui indique que la lame out est terminé.

Un conseil?

Était-ce utile?

La solution

La solution que j'ai choisi est de remplacer les méthodes virtuelles CDockablePane::ShowPane quand IsAutoHideMode() est FALSE et CDockablePane::OnSlide quand ce n'est pas.

Autres conseils

Essayez override CDockablePane :: CheckStopSlideCondition, sauvegarde bSlideDirection et la valeur de retour de la mise en œuvre de la classe de base quelque part

surchargent CDockablePane :: OnTimer et vérifier les valeurs enregistrées après la mise en œuvre de la classe de base lorsque nIDEvent est AFX_AUTO_HIDE_SLIDE_OUT_EVENT:

Note: AFX_AUTO_HIDE_SLIDE_OUT_EVENT n'est pas documenté et peut ne pas être disponible dans les versions futures de MFC

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top