zoukankan      html  css  js  c++  java
  • C++之messagebox

    messagebox

    用于显示一个模态对话框,包含了一个系统图标、一组按钮和一个简短的特定于应用程序消息、如状态或错误信息
    
    消息框中将返回一个整数值,该值指示了用户点击哪个按钮
    

    函数原型

    _In_说明参数是可以输入的
    _opt_说明参数是可选的
    
    int WINAPI MessageBox(
      _In_opt_  HWND hWnd,//hWnd该消息框的父窗口句柄 如果参数为NULL,则没有父窗口
      _In_opt_  LPCTSTR lpText,//消息框的内容
      _In_opt_  LPCTSTR lpCaption,//消息框的标题
      _In_      UINT uType//指定一个决定对话框的内容和行为的位标志集,参数可通过指定下列标志和标志的组合,来显示消息框中的按钮&图标
    );
    
    uType参数定义:
    MB_OK	默认值,有一个“确认”按钮在里面
    MB_YESNO	有“是”和“否”两个按钮在里面
    MB_ABORTRETRYIGNORE	有“中止”,“重试”和“跳过”三个按钮在里面
    MB_YESNOCANCEL	有“是”,“否”和“取消”三个按钮在里面
    MB_RETRYCANCEL	有“重试”和“取消”两个按钮在里面
    MB_OKCANCEL	有“确定”和“取消”两个按钮在里面
    
    更多参考
    https://fishc.com.cn/forum.php?mod=viewthread&tid=46730&extra=page%3D1%26filter%3Dtypeid%26typeid%3D420
    

    案例

    #include <windows.h>
    
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
    {
    	MessageBox(NULL, TEXT("开始学习!"), TEXT("haha"), MB_OKCANCEL | MB_ICONQUESTION | MB_DEFBUTTON2);
    	return 0;
    }
    

    增设中止、重试、跳过功能

    uType定义如下MB_ABORTRETRYIGNORE包含中止、重试、跳过功能
    
    关于MB_OK | MB_ABORTRETRYIGNORE 中的|代表:进行宏定义
    关于TEXT代表:解决编码问题,如果一些字符是单字节,其他又是双字节,就会导致不一致,可从TEXT的定义中发现
    

    #include <windows.h>
    
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
    {
    	MessageBox(NULL, TEXT("开始学习!"), TEXT("haha"), MB_OK | MB_ABORTRETRYIGNORE);
    	return 0;
    }
    

    增设确认功能

    #include <windows.h>
    
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
    {	
    	int choice;//用choice来确认选择的值
    	while(true){  //循环一直运行
    		choice=MessageBox(NULL, TEXT("开始学习!"), TEXT("haha"), MB_YESNO);
    		if (choice == IDYES) {		//如果选择的是yes
    			break;
    		}
    	}
    	return 0;
    }
    
    联系邮箱:yang_s1r@163.com 博客园地址:https://www.cnblogs.com/Yang34/
  • 相关阅读:
    ScheduledExecutorService改为一次性延时任务
    layer弹框倒计时结束后执行
    pom.xml如何使用本地库的jar-jar包上传到远程库-jar包安装到本地库
    Windows+WinRAR 压缩后备份文件夹
    java DES加密
    JAVA RSA加密公私钥
    Microsoft 语音服务异常 java.lang.UnsatisfiedLinkError: com.micros oft.cognitiveservices.speech.internal.carbon_javaJNI.swig_module_init()
    Java 线程池
    jsp页面导入excel文件的步骤及配置
    正则表达式校验时间格式(2018-01-02)
  • 原文地址:https://www.cnblogs.com/Yang34/p/14391443.html
Copyright © 2011-2022 走看看