button的caption显示问题
请教大家:
我用vc++(2005)写了个简单的窗口程序,程序很简单,界面只有两个button:button1和button2。我想实现的功能是按下button1后将button2的caption从0变为99,我在button1的click事件里写的代码是
String^ textshow;
for( int i=0; i<100; i++ ) {
textshow = System::Convert::ToString(i);
button2->Text = textshow;
Sleep( 1 );
}
delete textshow;
但是运行后的效果却是,button2的caption只显示99,0到98的数字都没显示,不知为什么呢?请大家帮帮忙解决一下~
问题点数:10、回复次数:4Top
1 楼NetManLive(网任我行)回复于 2006-03-26 09:46:51 得分 0
自己顶一下Top
2 楼independently(我是风筝高高飞)回复于 2006-03-26 13:57:33 得分 0
Sleep( 1 );时间太短啦。你设成1000试试,Sleep()参数的单位是毫秒,1毫秒太短了。Top
3 楼independently(我是风筝高高飞)回复于 2006-03-26 14:08:17 得分 5
button1按钮的事件代码:(我建的工程是非托管代码,就是不调用.NET类库)
CString str;
for(int i=0;i<100;i++)
{
str.Format("%d",i);
m_display.SetWindowText(str);//m_display是button2的关联变量
Sleep(2000);
}Top
4 楼zj0345(zj0345)回复于 2006-03-27 12:36:07 得分 5
支持上面的!
或者
CButton* bu;
bu=(CButton*)GetDlgItem(该控件id);
CString str;
for(int i=0;i<100;i++)
{
str.Format("%d",i);
bu.SetWindowText(str);
Sleep(2000);
}
或者
设置settimer函数,自主设置刷新时间
Top




