【发布时间】:2015-10-26 06:46:00
【问题描述】:
我正在将 Visual Studio 2010 与 MFC 一起使用,并且我正在尝试制作一个在设备断开连接时为红色且在断开连接时为绿色的矩形。我用以下代码制作了矩形:
CRect lConnectStatus;
GetDlgItem( IDC_CONNECT_STATUS ) -> GetClientRect( &lConnectStatus );
GetDlgItem( IDC_CONNECT_STATUS ) -> ClientToScreen( &lConnectStatus );
ScreenToClient( &lConnectStatus );
mConnected.Create( GetSafeHwnd(), 10000 );
mConnected.SetPosition( lConnectStatus.left, lConnectStatus.top, lConnectStatus.Width(), lConnectStatus.Height() );
if( mDevice.IsConnected() ){
mConnected.SetBackgroundColor(0, 255, 0);
}
else{mConnected.SetBackgroundColor(0, 0, 255);}
我将此 sn-p 插入到 OnInitDlg 方法中,矩形确实出现了,但是当设备连接时它不会变为绿色。无论如何我可以刷新窗口,以便再次执行代码并将颜色变为绿色?
【问题讨论】:
-
是的,看看a
CWndreference,我相信你会找到办法的。 -
该链接没有太大帮助,但感谢您的评论。
-
如果您点击该链接,还有另一个指向the
CWndclass members 的链接,其中包含关于update and painting functions 的部分,其中列出了Invalidate和RedrawWindow等函数。 -
啊,好吧,我对这一切都很陌生,所以我还没有完全了解参考页面。它看起来像一个很好的资源,所以请记住它以备后用。谢谢
标签: c++ visual-studio-2010 mfc