zoukankan      html  css  js  c++  java
  • 调用 DialogBox 会失败解决方法

    #include   "stdafx.h "
    #include   "resource.h "
    BOOL   CALLBACK   DialogProc(
        HWND   hwndDlg,     //   handle   to   dialog   box
        UINT   uMsg,           //   message
        WPARAM   wParam,   //   first   message   parameter
        LPARAM   lParam     //   second   message   parameter
    )
    {
    switch(uMsg)
    {
    case   WM_INITDIALOG:
    return   TRUE;
    case   WM_COMMAND:
    if(LOWORD(wParam)==IDOK||LOWORD(wParam)==IDCANCEL)
    EndDialog(hwndDlg,LOWORD(wParam));
    return   TRUE;
    }

    return   false;
    }
    int   APIENTRY   WinMain(HINSTANCE   hInstance,
                                              HINSTANCE   hPrevInstance,
                                              LPSTR           lpCmdLine,
                                              int               nCmdShow)
    {
    if(DialogBox(hInstance,MAKEINTRESOURCE(IDD_CHAT_DIALOG),NULL,(DLGPROC)DialogProc)==-1)
    {    
    MessageBox(NULL, "Call   DialogBox   failed. ", "Error ",MB_ICONEXCLAMATION);
    return       -1;
    }  
    return   0;
    }


    New-> Win32   Application-> A   simple   Win32   application-> finish

    然后   Insert-> Recource     插入对话框,编译没有错误,可对话框就是不显示,请问这是为什么呢?但我改成   New-> Win32   Application-> A   typicl   "hello   World "   application-> finish   就可以显示对话框,这是为什么呢?
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    我写了一个win32的应用程序,自己创建了一个窗口,点击鼠标左键的时候,调用MessageBox会弹出一个窗口来,本来没什么问题。但是我将外部的一个资源(就是windows扫雷的资源)添加进工程以后,就只能听到对话框“嘟”的一声,但是对话框却没有显示,这到底是怎么回事啊?
    到弄了几天都没有弄出来,各位大哥帮帮忙吧
    --------------------------------------------------------------------------------
    无代码,无真相
    --------------------------------------------------------------------------------
    调用一下:InitCommonControls
    --------------------------------------------------------------------------------
    楼上太强了,我加了以后就可以了。分先给你。

    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    1:包含头文件和库
      #include   "commctrl.h "
      #pragma   comment(   lib,   "comctl32.lib "   )

    2:   注册HotKey
    INITCOMMONCONTROLSEX   s;
    s.dwSize=   sizeof(   INITCOMMONCONTROLSEX);
    s.dwICC   =   ICC_HOTKEY_CLASS;
    InitCommonControlsEx(   &s);

    完整代码如下,再试试

    #include   "stdafx.h "
    #include   "resource.h "
    #include   "commctrl.h "
    #pragma   comment(   lib,   "comctl32.lib "   )
    int   APIENTRY   WinMain(HINSTANCE   hInstance,
                                              HINSTANCE   hPrevInstance,
                                              LPSTR           lpCmdLine,
                                              int               nCmdShow)
    {
    INITCOMMONCONTROLSEX   s;
    s.dwSize=   sizeof(   INITCOMMONCONTROLSEX);
    s.dwICC   =   ICC_HOTKEY_CLASS;
    InitCommonControlsEx(   &s);
    if(DialogBox(hInstance,MAKEINTRESOURCE(IDD_CHAT_DIALOG),NULL,(DLGPROC)DialogProc)==-1)
    {    
    MessageBox(NULL, "Call   DialogBox   failed. ", "Error ",MB_ICONEXCLAMATION);
    return       -1;
    }  
    return   0;
    }

  • 相关阅读:
    golang ssh 相关
    javascript 常用正则表达式收集
    Mac下 shell文件双击可执行怎么写
    Python常用插件之BeautifulSoup4使用
    Python常用插件之Requests使用
    JavaScript学习-WeakSet
    javascript学习-Set
    Vue-大型项目下路由的模块拆分
    360兼容模式ie10不支持includes方法
    360兼容模式ie10及以下版本map对象和Set对象没有定义
  • 原文地址:https://www.cnblogs.com/luoyaoquan/p/2025921.html
Copyright © 2011-2022 走看看