chrisliando Posted February 19, 2008 Posted February 19, 2008 (1) What is Project::Subclass::NativeWindowsEvent and how to use it? I've got codes in old C++ syntax and I want to change it to the new one. // =================================================================== // NativeWindow Subclassing // =================================================================== ref class Subclass : public System::Windows::Forms::NativeWindow { public: delegate void WindowsEventHandler(Object ^sender, Message ^uMsg); event WindowsEventHandler ^NativeWindowsEvent; Subclass(IntPtr pWindowHandle) { this->AssignHandle(pWindowHandle); } void SendWndProc( System::Windows::Forms::Message ^uMsg ) { //super::WndProc(uMsg); } protected: void WndProc( System::Windows::Forms::Message ^uMsg ) { //__super::WndProc(uMsg); if ( Project::Subclass::NativeWindowsEvent != nullptr ) Project::Subclass::NativeWindowsEvent(this, uMsg); } }; When I compiled it, the error message was: Error C3918: usage requires 'Project::Subclass::NativeWindowsEvent' to be a data member see declaration of 'Project::Subclass::NativeWindowsEvent' How to change it to the new C++ syntax? (2) What is "__super" in old C++ syntax converted to new C++ syntax? Thank you very much. Quote
Administrators PlausiblyDamp Posted February 19, 2008 Administrators Posted February 19, 2008 C++ (managed or otherwise) isn't really my strong point, however I think the NativeWindowsEvent is a delegate of type void xxxxx(ref Message Msg), other than that I'm struggling with the c++ syntax. Have you tried declaring a member of type NativeWindowsEvent? Quote Posting Guidelines FAQ Post Formatting Intellectuals solve problems; geniuses prevent them. -- Albert Einstein
Machaira Posted February 19, 2008 Posted February 19, 2008 /me wonders why anyone is using managed C++ instead of C# :confused: :( Quote Here's what I'm up to.
chrisliando Posted February 20, 2008 Author Posted February 20, 2008 Yes, I think I have to do like you said, "declaring a member of type NativeWindowsEvent". I guess it will fix the error. But I don't understand how to declare a member of type.. Can you help me, please? This one is not a declaration? event WindowsEventHandler ^NativeWindowsEvent; Thank you very much.. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.