我在视图里创建了一个按钮,可以正常运行。可是当我再创建另一个时为什么老不能运行呢?m_button.Create("确定",BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD,CRect(300,620,360,650),this,1000);
m_button.Create("退出",BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD,CRect(300,300,340,340),this,1223);
而且其中的1000是指什么呢?nID?我查了查MSDN里面是这样的啊,怎么不一样呢?
BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
dwStyle里面没有BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD这几种样式啊?谢谢

解决方案 »

  1.   

    我又设了两个变量
    m_button1.Create("确定",BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD,CRect(300,620,360,650),this,1000); m_button2.Create("退出",BS_PUSHBUTTON|WS_VISIBLE|WS_CHILD,CRect(300,300,340,340),this,1223);
    这样就可以了,能解释一下吗?是不是每建一个按钮都要这样呢?另外我想建个对话框里的那个Picture控件怎么建?MSDN里面没有
      

  2.   

    1000是指nID,即按钮对应的ID号。
    BS_PUSHBUTTON 是button styles,button styles还包括很多,如:BS_AUTO3STATE,BS_OWNERDRAW 等等。
    WS_VISIBLE ¦WS_CHILD是windows styles,CButton类继承窗口类,也有窗口的一些属性
    示例代码:
    CButton myButton1, myButton2, myButton3, myButton4;// Create a push button.
    myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, 
       CRect(10,10,100,30), pParentWnd, 1);// Create a radio button.
    myButton2.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_RADIOBUTTON, 
       CRect(10,40,100,70), pParentWnd, 2);// Create an auto 3-state button.
    myButton3.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_AUTO3STATE, 
       CRect(10,70,100,100), pParentWnd, 3);// Create an auto check box.
    myButton4.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX, 
       CRect(10,100,100,130), pParentWnd, 4);
      

  3.   

    楼上正解。nID可以随便取,但是不能重复