问题描述
在windows窗体编程时,我在button_click1事件里引用了一个自定义函数,其中用到label1->Text="hello!",具体staticvoidshowtime(UINTuTimerID,UINTuMsg,DWORDdwUser,DWORDdw1,DWORDdw2){label1->Text="hello!";}但是系统提示label1不是类或对象,应该怎么改,请高手指教我后来改为{voidshowtime(Label^l);showtext(label1);}在外又定义了showtext,又提示对label1非法引用
解决方案
解决方案二:
可以这样用?
解决方案三:
Label1->Caption="hello!";
解决方案四:
是不是头文件没有引入
解决方案五:
label1在你这个Form里没有。
解决方案六:
showtime既然不是TForm的类成员函数,那么在引用Label对象时,需要在前面加上类名,如:staticvoidshowtime(UINTuTimerID,UINTuMsg,DWORDdwUser,DWORDdw1,DWORDdw2){Form1->Label1->Text="hello!";}
解决方案七:
谢谢您,我改成Form1->Label1->Text="1";但是编译后出现错,语法错误:缺少“;”(在“->”的前面)不知道是怎么回事,麻烦您指点一下
解决方案八:
把Form1改成你的窗体名字。
解决方案九:
我的窗体是Form1.h*,应该就是Form1吧
解决方案十:
老师,这是我的代码,麻烦您帮忙看一下#pragmaendregionprivate:System::Voidlabel1_Click(System::Object^sender,System::EventArgs^e){}//Thescreenprivate:System::Voidbutton1_Click(System::Object^sender,System::EventArgs^e){MMRESULTtimer_id;voidCALLBACKshowtime(UINTuTimerID,UINTuMsg,DWORDdwUser,DWORDdw1,DWORDdw2);logic=1;begin=clock();if(logic)timer_id=timeSetEvent(1,0,(LPTIMECALLBACK)showtime,0,TIME_PERIODIC);}//StartstaticvoidCALLBACKshowtime(UINTuTimerID,UINTuMsg,DWORDdwUser,DWORDdw1,DWORDdw2){end=clock();Form1->label1->Text="1";}/*staticvoidshowtext(System::Object^sender,System::EventArgs^e){label1->Text=((double)((end-begin)/CLOCKS_PER_SEC)).ToString();}*/private:System::Voidbutton2_Click(System::Object^sender,System::EventArgs^e){}//Pauseprivate:System::Voidbutton3_Click(System::Object^sender,System::EventArgs^e){}//Restart
解决方案十一:
询问下楼主,用的什么开发IDE
解决方案十二:
MyGod,这是VC.NET啊。
解决方案十三:
请问您应该怎么修改,真的是急用,请您帮忙
解决方案十四:
麻烦您了,就是想在timeSetEvent回调函数中定义显示label的文本,试了很长时间,总是不能通过
解决方案十五:
我用的是VS2010窗口编程,不知道是不是您说的IDE
解决方案:
我了个去。。。lz跑错地方了啊
解决方案:
老妖就是老妖,我怎么感觉你什么IDE都知道。看见你我是彻底崩溃。有空求你给小弟我赐教赐教啊