动态创建控件
以按钮和图片为例
CButton* myDlg::NewMyButton(int nID,CRect rect,int nStyle) { CString m_Caption; m_Caption.LoadString( nID ); //取按钮标题 CButton *p_Button = new CButton(); ASSERT_VALID(p_Button); p_Button->Create( m_Caption, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON | nStyle, rect, this, nID ); //创建按钮 return p_Button; } CStatic*myDlg::NewMyBtm(int nID,CRect rect,int nStyle) { CString m_Caption; m_Caption.LoadString( nID ); //取按钮标题 CStatic *p_Button = new CStatic(); ASSERT_VALID(p_Button); //p_Button->Create( m_Caption, WS_CHILD | WS_VISIBLE|SS_BITMAP | nStyle, rect, this, nID ); //创建按钮 p_Button->Create( m_Caption,SS_CENTER|WS_CHILD|WS_VISIBLE|SS_BITMAP|SS_CENTERIMAGE | nStyle, rect, this, nID ); //创建按钮 p_Button->ModifyStyle(0xF,SS_BITMAP);//设置静态控件的样式,使得它可以使用位图 return p_Button; } //设置图片 void myDlg::setBitmap(LPCWSTR bmpPath){ //CBitmap *mCBmp; HBITMAP mHdlBmp; //BITMAP m_Bitmap; mHdlBmp=(HBITMAP)LoadImage(NULL,bmpPath,IMAGE_BITMAP,bmp_x,bmp_y,LR_CREATEDIBSECTION | LR_LOADFROMFILE); p_MyBtm->SetBitmap(mHdlBmp); p_MyBtm->ShowWindow(TRUE); }
转载请注明出处: 芝麻开花
本文的链接地址: http://www.vmould.cn/?post=188
发表评论 取消回复