VC对话框怎么添加ondraw函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC对话框怎么添加ondraw函数相关的知识,希望对你有一定的参考价值。

  VC6.0下,基于文档的MFC程序的话,在View.cpp中右键选择ClassWizard,在Message中找到OnDraw,点击AddFunction按钮即可。
  ONDRAW函数是CMYVIEW的成员函数,在基于对话框的程序中没法使用这个函数。
参考技术A VC6.0下,基于文档的MFC程序的话,在View.cpp中右键选择ClassWizard,在Message中找到OnDraw,点击AddFunction按钮即可。ONDRAW函数是CMYVIEW的成员函数,在基于对话框的程序中没法使用这个函数~追问

谢谢,VC中怎么重写一个消息函数!

追答

是添加一个消息响应函数吧!在你需要捕获消息的控件上、对话框上或者.cpp文件的空白处,鼠标右键选择ClassWizard,选择ClassName、ObjectID,选择你要响应的消息Message,点击AddFunction按钮即可~~

本回答被提问者采纳

VC对话框添加工具栏

在VC对话框中添加工具栏,要分为如下几步操作。

1、在资源视图中添加toolbar类资源,在工具栏上添加按钮,并命名ID:ID_BTN1,ID_BTN2

2、对话框头文件中,添加变量CToolBar  m_ToolBar;

3、在对话框的OnInitDialogh函数中添加如下代码:

// TODO: 在此添加额外的初始化代码  
    if( !m_ToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | 
        CBRS_ALIGN_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS ) ||    
        !m_ToolBar.LoadToolBar(IDR_TOOLBAR1))    
    {    
        TRACE0("未能创建工具栏\n");    
        AfxMessageBox(_T("未能创建工具栏\n"));    
        return FALSE;      // 未能创建    
    }    
    m_ToolBar.ShowWindow(SW_SHOW);    
    //控件条定位    
    RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);

4、添加提示消息汽泡
   添加反射消息:ON_NOTIFY_EX_RANGE(TTN_NEEDTEXT, 0, 0xffff, OnToolTipText)

头文件中添加消息函数声明:

afx_msg BOOL OnToolTipText(UINT, NMHDR* pNMHDR, LRESULT* pResult);//汽泡提示

在CPP文件中添加函数如下:

BOOL CTestDLLDlg::OnToolTipText(UINT, NMHDR* pNMHDR, LRESULT* pResult)  
{  
    TOOLTIPTEXT   *pTTT=(TOOLTIPTEXT*)pNMHDR;      
    UINT  uID=pNMHDR->idFrom;     // 相当于原WM_COMMAND传递方式的LOWORD(wParam),
                                  //在wParam中放的则是控件的ID。    
  
    if(pTTT->uFlags  &  TTF_ABSOLUTE)      
        uID=::GetDlgCtrlID((HWND)uID);       
    if(uID==NULL)       
        return   FALSE;      
    switch(uID)    
    {      
    case ID_BTN1:    
        pTTT->lpszText= _T("OK");      
        break;    
  
    case ID_BTN2:    
        pTTT->lpszText= _T("hello");      
        break;    
    }    
    return TRUE;    
}


以上是关于VC对话框怎么添加ondraw函数的主要内容,如果未能解决你的问题,请参考以下文章

VC中改变窗口背景颜色和控件背景颜色

VC++6.0中如何让窗口总在前面?

vc2005 webbrowser 怎么添加啊

ondraw 函数没有在 mfc 中调用?

VC对话框添加工具栏

怎么初始化MFC主对话框界面