以前用CButtonST,如果前面有播放器在最顶端显示(专业一点称为Windows Z序前列)界面程序的遮挡,或者程序开始时最小化,真正展示界面时,CButtonST外观就很拖沓了,图片位置不对或者周边背景杂色(多见白色或黑色),这时候往往想来个this->Invalidate(TRUE);撮合一下,还是不起效,无奈之下,查找其提供的API,原来下面的代码可以凑效:
m_ctrBtOK.SizeToContent();//自适应图片大小
m_ctrBtOK.Invalidate(TRUE);//重绘背景色
OK!困扰我好长时间的问题终于解决了.
以前曾恨过BtST这一行为呢!现在想起还真的不好意思,要怪就怪俺当时没摸到你的脾气!
如果在视图中那招就不凑效了,只好在OnPaint中调用m_ctrBtOK.SetBk(&dc);了