`

封装一个Win32弹出提示框的函数

阅读更多
VOID        CreateToolTip(
    HWND        hDlg,                  
    DWORD       dwIdNum,              
    LPBYTE      lpbyTipMsg )
{
   
    TOOLINFO    tinfo;               
    HWND        hWndTip;               

    hWndTip = CreateWindowEx(
        0,                             
        TOOLTIPS_CLASS,               
        (LPSTR)NULL,                   
        TTS_ALWAYSTIP | TTS_NOPREFIX ,
        CW_USEDEFAULT,                
        CW_USEDEFAULT,                
        CW_USEDEFAULT,                 
        CW_USEDEFAULT,               
        hDlg,                         
        NULL,                       
        ghInst,                 
        NULL );


    if( !hWndTip ){

        return;
    }


    tinfo.cbSize   = sizeof( TOOLINFO );                 
    tinfo.uId      = (UINT)GetDlgItem( hDlg, dwIdNum );   
    tinfo.lpszText = (LPTSTR)lpbyTipMsg;                
    tinfo.uFlags   = TTF_IDISHWND | TTF_SUBCLASS;       
    tinfo.hwnd     = hDlg;                             
    tinfo.hinst    = ghInst;                          


    SendMessage(
        hWndTip,                        
        TTM_SETMAXTIPWIDTH,          
        0,                         
        (LPARAM)(INT)500);   


    SendMessage(
        hWndTip,                      
        TTM_ADDTOOL,      
        0,
        (LPARAM)( (LPTOOLINFO)&tinfo ));

    return;
}

注意两点:1、STATIC控件ID不能是默认的ID(IDC_STATIC) 2、在设计器中将STATIC Notify通知消息设置为TRUE  (属性面板)
分享到:
评论

相关推荐

    VC右下角弹出框代码(Win32示例)

    在Windows编程中,右下角...总之,“VC右下角弹出框代码(Win32示例)”是一个学习和实践Windows系统托盘通知区域气泡提示的好材料,通过分析和运行示例代码,你可以深入了解Win32 API在创建这种用户界面元素时的应用。

    高级Win32的控件的使用 每个都有实例和源码

    即时提示是一种小型的弹出窗口,会在鼠标悬停在特定控件上时显示相关说明。在Win32 API中,可以使用CreateWindow创建即时提示窗口,并通过RegisterWindowMessage和SendDlgItemMessage发送自定义消息来控制其显示。...

    Qt利用WindowsAPI弹出U盘

    在判断磁盘驱动器类型时,可以使用`GetDriveType`函数,该函数会返回一个值表示驱动器的类型,如`DRIVE_FIXED`表示固定磁盘(如硬盘),`DRIVE_REMOVABLE`表示可移动磁盘(如U盘)。对于U盘,我们可以使用`IOCTL_...

    js弹出层可拖动兼容各大浏览器[文].pdf

    函数`$`是ID选择器的封装,类似于jQuery中的 `$` 函数,它接受一个ID作为参数并返回对应的DOM元素。 `Win`函数是核心,它负责创建弹出层。`Create`方法接收多个参数:遮罩层(mask)、标题(title)、弹出层内容...

    :: AfxMessageBox()函数

    `AfxMessageBox()`函数在MFC中扮演着弹出消息框的角色,类似于Windows API中的`MessageBox()`函数。 标题":: AfxMessageBox()函数"指出我们要讨论的是MFC框架下用于显示警告、确认或信息对话框的`AfxMessageBox()...

    MFC基本应用程序的建立

    `MessageBox`函数弹出一个包含指定文本和标题的消息对话框,并可以设置对话框中显示的按钮类型。 创建一个MFC基础应用程序通常包括以下步骤: 1. 使用Visual C++打开“文件”菜单,选择“新建”,在“工程”选项中...

    对话框乱弹的小程序源码

    在这个小程序中,开发者可能创建了一个循环,不断地向消息队列发送打开新对话框的消息,导致对话框连续快速地弹出。 至于文件名称列表中的"对话框乱弹",这可能是源代码文件或者编译后的可执行文件名,具体要看...

    虚拟桌面 vb代码 api

    如果创建失败,会弹出一个消息框提示用户。 在实际应用中,VB的虚拟桌面API不仅可以用于创建和切换桌面,还可以用于管理桌面上的窗口,例如移动窗口到不同的桌面,或者根据需要显示和隐藏桌面。这在多任务环境中...

    MFC实现单词模糊查询

    例如,当用户输入为空或者没有找到匹配项时,可以弹出一个消息框告知用户。 最后,别忘了考虑性能优化,尤其是在处理大量数据时。这可能包括异步查询、多线程处理或者利用MFC的异步消息机制。 综上所述,"MFC实现...

    用MFC做的简易

    6. 错误处理:为了增强用户体验,还需要考虑错误处理,比如除以零、无效的表达式等,可以通过弹出警告对话框来提示用户。 通过这样的设计和实现,一个具有基础运算、括号处理和连续运算功能的MFC计算器便完成了。...

    控件MFC文件

    这里使用`MessageBox`函数弹出一个消息框,询问用户是否确认关闭系统,根据用户的响应决定后续的流程。 #### 结论 综上所述,MFC不仅提供了丰富的控件库,还封装了一系列方便的数据绑定和文件操作功能,使得开发者...

    mfc文档,课程实验

    10. **程序退出**:当接收到`WM_DESTROY`消息(窗口被销毁)时,通常会弹出一个确认对话框询问用户是否真的要退出,然后通过`PostQuitMessage`发送一个WM_QUIT消息,结束消息循环,从而终止程序。 通过这个实验,...

    [源代码+程序]时间宝宝2.0-win7定时关机待机提醒VS2012 MFC

    用户可以设置一个时间,当到达该时间时,程序会弹出提醒,提示用户是否需要将电脑切换到待机模式。这有助于用户合理安排工作和休息,提高效率。 在“时间宝宝2.0.exe”这个执行文件中,包含了程序的全部功能。用户...

    VC++精彩编程百例1-2

    在VC++环境中,我们通常使用MFC库创建一个简单的Win32控制台应用。首先,新建一个项目,选择Win32 Console Application模板,然后在源文件中添加如下代码: ```cpp #include using namespace std; int main() { ...

    基于MFC编写的五子棋程序

    5. **界面反馈**:当出现五子连珠时,弹出对话框提示胜利,并阻止继续下棋。 四、优化与扩展 1. **悔棋功能**:添加回退功能,可以撤销上一步操作。 2. **人工智能对手**:引入简单的AI算法,如Minimax或Alpha-...

    win对话框的socket,多线程聊天

    1. **对话框(Dialog Box)**:在Windows API中,对话框是一种可以弹出的窗口,用于与用户进行交互,它包含各种控件,如文本框、按钮、列表框等。对话框通常用作数据输入或显示信息。VC++中,我们可以使用MFC...

    100以内的加减计算器(MFC编程)

    如果超出范围,则可以弹出一个警告对话框,提示用户输入正确的数值。 标签中的"mfc 编程语言"强调了MFC与C++编程的关系。MFC是C++的扩展,通过封装Windows API,使得开发者可以更专注于业务逻辑,而无需过多关注...

    MFC 编写的简单计算器

    - 当用户尝试除以零时,会弹出提示框告知用户“除数不能为0!”。 - 如果编辑框为空而用户试图执行计算操作,同样会有提示。 #### 六、代码优化建议 1. **增强容错性**:对于非数字输入进行过滤处理。 2. **改善...

Global site tag (gtag.js) - Google Analytics