zoukankan      html  css  js  c++  java
  • Win32添加对话框

    //模态对话框
    在要显示对话框的地方:
    DialogBox(hInstance,//实力句柄
      MAKEINTRESOURCE(IDD_DIALOG1),//对话框资源ID
      hWnd,//父窗口句柄
      DlgProc);//处理的窗口过程函数

    //窗口处理过程函数
    BOOL CALLBACK DlgProc (HWND hDlg, UINT message,WPARAM wParam, LPARAM lParam)
    {
     int i = 0;
          switch (message)
          {
          case  WM_INITDIALOG :
                return TRUE ;//对话框初始化处理
                    case  WM_COMMAND : //命令处理
                switch (LOWORD (wParam))
                {
       case IDC_BUTTON1:
        //设置服务器地址
        char str[50];
        GetWindowText(GetDlgItem(hDlg, IDC_IPADDRESS1), str, 16);
        m_socket.SetServerAddress(str);
        break;
                case  IDOK :
        //设置服务器地址

        SetWindowText(GetDlgItem(hDlg, IDC_TEXT), "abc");
                case  IDCANCEL :
                       EndDialog (hDlg, 0) ;//关闭对话框
                       return TRUE ;
              }
                break ;
         }
       return FALSE ; //没有处理返回FALSE
    }

    //非模态对话框

    HINSTANCE hInst;

    LRESULT MainDlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam);

    int APIENTRY _tWinMain(HINSTANCE hInstance,

      HINSTANCE hPrevInstance,

      LPTSTR    lpCmdLine,

      int       nCmdShow)

    {

    MSG msg;

    HWND hMDlg = NULL;

    hInst = hInstance;

    hMDlg = CreateDialog(hInstance, (LPCTSTR)IDD_DLG_DICT, 0,(DLGPROC)MainDlgProc);

    ShowWindow(hMDlg, nCmdShow);

    while (GetMessage(&msg, NULL, 0, 0))

    {

    TranslateMessage(&msg);

    DispatchMessage(&msg);

    }

    return 0;

    }

    LRESULT MainDlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam)

    {

    switch (Msg)

    {

    int wmId, wmEvent;

    case WM_COMMAND:

    wmId    = LOWORD(wParam);

    wmEvent = HIWORD(wParam);

    switch (wmId)

    {

    case IDC_BUTTON_EXIT:

    DestroyWindow(hDlg);

    break;

    }

    break;

    case WM_CLOSE: 

    DestroyWindow(hDlg); 

    return TRUE;

    break;

    case WM_DESTROY: 

    PostQuitMessage(0); 

    return TRUE;

    };

    return FALSE;//返回FALSE给缺省对话框函数DefDlgProc(),表示没有处理本消息

    }

  • 相关阅读:
    双指针法
    secureCRT安装与激活
    [Python之路] Python各类常用库整理
    [工具] Atom Markdown编辑器
    [Python之路] object类中的特殊方法
    [Python自学] Flask框架 (5) (DBUtils数据库链接池、wtforms)
    [Python自学] Flask框架 (4) (Request&Session上下文管理、redis保存session、App&g上下文管理)
    [刷题] Leetcode算法 (2020-3-1)
    [工具] Window10搭建Django开发环境
    [算法] 动态规划 (1) (工作最优收入)
  • 原文地址:https://www.cnblogs.com/sifenkesi/p/1752749.html
Copyright © 2011-2022 走看看