C++Builder的窗口属性为什么赋值后就立即使窗口生效了
C++Builder的窗口属性为什么赋值后就立即使窗口生效了
就是比如Form1-> Left=100;这句话一执行就可以使窗口立即移动,不像MFC需要Update之类的?
问题就是移动窗口需要访问API函数SetWindowPos()啊?这个 "= "是整数的运算,也不可能再运算符重载了,关键是这个 "= " 是如何使得这个SetWindowPos()函数被调用的?
[解决办法]
Form1-> Left=100 表面是赋值, 实际执行的是SetLeft()函数,
Left声明是 __property int Left = {read=FLeft, write=SetLeft, nodefault};
而SetLeft最终还是调用了API .