最近开始整windows编程,遇到很多比较低级的问题,偏偏自己有属于比较懒散的类型,遇到了就解决,没遇到就不管他,呵呵,废话不多说了直接进入正题吧。
写这些东西是基于一个音频矩阵切换的项目,在后面的日子随着项目的进展我会把所有遇到的问题都发上来,可能没人会看,不过当做是给自己程序生涯的一点记号吧。
首先创建一个控制窗口吧,当然用MFC,听说VC6比较经典,而且遇到问题也好解决,这里也用的VC6.0。
在创建时选择创建文档模式,在最后一个选项是把CView改为CFormView,生成的程序便能直接在界面中拖拉如radio之类的控件了,要比动态添加方便许多。
生成的MAINFRAME默认是有菜单栏以及工具栏的,因为我需要的比较简洁,所以工具栏就不要了,具体的做法如下:
在MainFrm.cpp中有如下代码段:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
//SetMenu(NULL); 如果这句生效那么将连同菜单栏一起消失,那倒不如直接生成一个dialog了
/*if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar/n");
return -1; // fail to create
}*/
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar/n");
return -1; // fail to create
}
//TODO: Delete these three lines if you don't want the toolbar to
// be dockable
//m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
//EnableDocking(CBRS_ALIGN_ANY);
//DockControlBar(&m_wndToolBar);
return 0;
}
以上是修改后的代码,其实代码很简单,只要能找到都知道咋回事我就不多解释了。。。