vc++怎样在自己写的函数里修改控件属性
usingnamespacechuangti;voidhello(){Form1->textBox1->Text="hello";}报错errorC2143:语法错误:缺...
using namespace chuangti;
void hello(){
Form1->textBox1->Text="hello";
}
报错error C2143:语法错误:缺少“;”在->前面 展开
void hello(){
Form1->textBox1->Text="hello";
}
报错error C2143:语法错误:缺少“;”在->前面 展开
展开全部
你那Form1、textBox1、Text都是什么变量?在哪儿声明的?在哪儿定义的?在哪儿初始化的?类型是什么?就这么一个函数,上哪儿知道去?莫不是你就这么写了个函数就想编译通过?
追问
Form1是主窗口,textBox1是里面包含的一个控件,Text是textBox1里的文字,在Form1.h里的InitializeComponent里构造的。我现在想在自己写的函数里修改控件里的文字。我还有别的很多文件不能写出来啊,这地方不够。我创建的是VS C++窗体应用程序
追答
这个错误简单来说,就是你的函数作用域中不认识Form1,也可能是textBox1。
一般来说,没有这样修改控件属性的。
控件属性/状态的改变,应该是基于消息响应的,在某个消息到来时,相关控件的属性/状态会发生变化。最起码,控件属性的改变应该利用相关的接口/方法,而不应该这样直接赋值。
至少在textBox1的类中应该有个SetText(CString str)这样的方法吧?
个人看法,楼主的问题是对C++编程思想的理解不够,建议不要再继续纠结VS的窗口程序,而应该仔细研究一下C++的封装/继承/多态等基本编程思想,这样下去对你百害无一利。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询