• MFC_随机生成数


    MFC生成随机数

    最近在学习MFC,于是就试着编个实现生成随机数的GUI程序玩玩。

    前几天,一直在摸索MFC如何编程?看了孙鑫《VC++深入浅出》书后,对基本运行流程有了大致的了解。因此完成这个,也就自己玩似的进行了。

    步骤

    1. 新建MFC应用程序工程,在其中选择对话框,其他的按照默认值一路确定过去就行了。
    2. 打开资源视图,将原来的控件全部删除,参考下图摆好基本框架。

    界面

    3. 双击生成随机数按钮,即可完成响应函数。接下来要做的便是完成响应函数代码。

    首先需要从IDC_Edit1中获取输入数值,从而进行判断。

    • 函数GetWindowTextW获取控件值,注意:该函数已重载,有两种用法
    • 函数SetWindowTextW设置控件值
    • 函数itow(),T()是基本的类型转换函数

    具体代码参考:


    void CMFC_randDlg::OnBnClickedCfm()
    {
        // TODO: 在此添加控件通知处理程序代码
        CString str;
        wchar_t  _dest[10];
        int m_mod, num;
        GetDlgItem(IDC_EDIT1)->GetWindowTextW( str );
        if( str == _T("0") || str.IsEmpty())
        {
            m_mod = RAND_MAX;
        }
        else
        {
            m_mod = (_wtoi(str));
        }

    num = rand() % m_mod;
    _itow( num, _dest, 10 );
    GetDlgItem(IDC_EDIT2)->SetWindowTextW( _dest );
    

    }


    运行结果

    运行结果

    总结

    由于对VS函数、变量不太熟悉,因此自己在调试上花费了一些时间——主要问题是CString、whcar_t等格式。同时也发现一个问题:当输入框为空时出现错误,因此自己在判断语句中加入str.IsEmpty()来解决这个问题。

  • 相关阅读:
    几种委托的解释
    Python中的编码风格
    Python的循环
    Python中操作文件
    Python的random模块、string模块、time模块、os模块
    Python中的函数
    Python的数据类型
    使用iview Form 的resetFields()在f12下报错
    滚动条的滚动距离
    编程学习之资源
  • 原文地址:https://www.cnblogs.com/miraclecoder/p/4051188.html
Copyright © 2020-2023  润新知