zt:CDialogBar加入一个Button
永不消逝的蓝吧
全部回复
仅看楼主
level 5
CDialogBar加入一个ButtoncToolBox是继承CDialogBar,我将对话盒工具列置於视窗框架上方我想加一个按钮IDC_BUTTON_OPENXFILE,可是他都一直是disenable,就算我初始化有设定它还是变成disenable.我只要这个Button可以按下,并且执行OnButton_OpenXFile请问我应该如何修改呢?
#include "stdafx.h"#
include "cToolbox.h"#include "resource.h" // main symbols#include "MainFrm.h"
#ifdef _DEBUG#
undef THIS_FILEstatic char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW#
endifBEGIN_MESSAGE_MAP(cToolBox, CDialogBar)//{{AFX_MSG_MAP(cToolBox)ON_BN_CLICKED(IDC_BUTTON_OPENXFILE, OnButton_OpenXFile)//}}AFX_MSG_MAPEND_MESSAGE_MAP()void cToolBox::OnButton_OpenXFile() {// TODO: Add your control notification handler code here}cToolBox::cToolBox(){}cToolBox::~cToolBox(){}void cToolBox::DoDataExchange(CDataExchange *pDX) //资料交换函数{}BOOL cToolBox::OnCommand(WPARAM wParam, LPARAM lParam) //回应WM_COMMAND讯息{UpdateData(); //呼叫cToolBox::DoDataExchange进行更新资料UINT wID=LOWORD(wParam); switch (wID){case IDC_BUTTON_OPENXfile:TRACE(">>> open xfile\n");break; case IDC_RADIO_X_STATIC:SetXMode(ENUM_XFILE_STATIC_MODE);break;case IDC_RADIO_X_DYNAMIC:SetXMode(ENUM_XFILE_ANIMATION_MODE);break;}return CDialogBar::OnCommand(wParam, lParam);}BOOL cToolBox::CreateDlgBar(){main = (CMainFrame *)AfxGetMainWnd(); if( !IsWindow(m_hWnd) ) { if( Create(main,IDD_TOOLBOX,CBRS_TOP,AFX_IDW_CONTROLBAR_FIRST
+3
2)){ UpdateData(FALSE); EnableDocking(CBRS_ALIGN_TOP);main->DockControlBar(this,AFX_IDW_DOCKBAR_TOP);//CButton* but=(CButton*)GetDlgItem(IDC_RADIO_X_STATIC);but->SetCheck(1);GetDlgItem(IDC_BUTTON_OPENXFILE)->EnableWindow(TRUE);}}return TRUE;}//.hclass cToolBox : public CDialogBar //TooBar类别{public:......// Generated message map functions//{{AFX_MSG(cToolBox)afx_msg void OnButton_OpenXFile();//}}AFX_MSGDECLARE_MESSAGE_MAP()};
2007年01月11日 15点01分 1
1