你在Windows上看到的所有控件从广义上讲都是Window.都从CWnd这个类派生.Button,progressbar,view,listbox,combobox....全是Window.非可见的其余类属于C++类,窗口类也是C++类,向窗口发消息就看你是向那个控件发消息了.

解决方案 »

  1.   

    对象是类的实例,如CSTring str和int i;有何区别?CString 是类,str是对象。你应去看一下
    C++基本语法和Win Api编程(要想成为高手的话!)。
      

  2.   

    我是否可以这样理解:“看到的所有控件”在前台,由窗口类注册,占有句柄资源。CWnd对象在后台,不可见,类代码控制着显示在前台的窗口?
      

  3.   

    cwnd对象是窗口类的对象,是你所建立的窗口类实例向窗口发送
    消息是向cwnd发。
      

  4.   

    窗口类和CWnd类可不是一回事,下面是窗口类的定义和注册WNDCLASSEX  wndclass ;     wndclass.cbSize        = sizeof (wndclass) ;
         wndclass.style         = CS_HREDRAW | CS_VREDRAW ;
         wndclass.lpfnWndProc   = WndProc ;
         wndclass.cbClsExtra    = 0 ;
         wndclass.cbWndExtra    = 0 ;
         wndclass.hInstance     = hInstance ;
         wndclass.hIcon         = LoadIcon (NULL, IDI_APPLICATION) ;
         wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW) ;
         wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
         wndclass.lpszMenuName  = NULL ;
         wndclass.lpszClassName = szAppName ;
         wndclass.hIconSm       = LoadIcon (NULL, IDI_APPLICATION) ;     RegisterClassEx (&wndclass) ;下面是创建窗口并返回它的句柄hwnd = CreateWindow (szAppName,         // window class name
                "The Hello Program",     // window caption
                        WS_OVERLAPPEDWINDOW,     // window style
                        CW_USEDEFAULT,           // initial x position
                        CW_USEDEFAULT,           // initial y position
                        CW_USEDEFAULT,           // initial x size
                        CW_USEDEFAULT,           // initial y size
                        NULL,                    // parent window handle
                        NULL,                    // window menu handle
                        hInstance,               // program instance handle
                NULL) ;以上的内容属于Win32API
    那么CWnd呢?
    它其实就是用C++的方法用把上面的东东包起来,形成一个C++的类。
    如果C++的类是什么你都不知道,那你还是先找本C++的语法书看看吧。
      

  5.   


    《JAVA与面向对象程序设计教程》 印旻 高等教育出版社 1999.11 24.00元 对OOP(面向对象)的讲解透彻形象,读起来行云流水,是大陆产不可多得的较为有趣的计算机教材。有了OOP的概念,再学C++或JAVA就快多了。注:该书还有一版本为情话大学出版社出版的,其中砍掉了我认为最为精彩的形象生动的例子,“有许多沧桑,我永远不懂”,非要写得枯燥无比才算是一本经典的严肃的教材吗?不要怨我们缺乏创造力,我们的创造力造就从幼儿园被园丁们喀嚓了。相比之下情话大学出版社的《C++基础教程》更象一本应付考试的复习大纲,用循环定义的手法讲述了几个重要概念,令初学者多花不少时间,比较适合已有OOP概念的读者对付考试:)。
    http://gisfan.top263.net