你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 编程语言
用VC制作迅雷批量下载列表生成器(三)
 

三、制作过程

新建一个基于MFC的对话框工程,工程名称叫DownList。添加如图2所示的控件,控件ID按照表1命名,并对控件添加消息响应,如表2所示。

2 控件的消息映射

控件ID

消息类型

函数名称

说明

IDC_BTN_CREATE

BN_CLICKED

OnBtnCreate

生成下载列表

IDC_BTN_EXPORTLIST

BN_CLICKED

OnBtnExportlist

导出下载列表文件

IDC_EDIT_URL

EN_CHANGE

OnChangeEditUrl

检测通配符的出现个数

IDC_RADIO_COMMON10

BN_CLICKED

OnRadioCommon10

选择单选按钮时的响应

IDC_EDIT_WIDTH1

EN_CHANGE

OnChangeEditWidth1

输入数字宽度的响应

 

1.对话框初始化,定位到OnInitDialog()

return TRUE所在行的上一行添加如下代码:

DisableCommonCtrls();//使设置范围控件初始时不可用

DisableCommonCtrls函数的作用就是设置通配符的设置控件不可用,下面为CDownListDlg类添加成员函数DisableCommonCtrls()

 

 

void CDownListDlg::DisableCommonCtrls()

{

    for (int i=0; i<36; i++)

    {

        HWND hWnd = ::GetDlgItem(this->m_hWnd, IDC_RADIO_COMMON10+i);

        ::EnableWindow(hWnd, FALSE);//使控件呈灰色不可用状态

    }

}

2.检测输入通配符的个数,为初始网络地址输入框的CHANGE消息响应函数添加代码。

void CDownListDlg::OnChangeEditUrl()

{

    UpdateData();//接收控件数据

    int nCount = 0;//通配符计数器,初始为0

    for (int i=0; i<m_strURL.GetLength(); i++)

    {

        if(m_strURL.Mid(i,1) == "*")

        {

            nCount ++;//通配符*的计数

        }

    }

    if (nCount > 4) //目前只支持1-4个通配符,所以异常处理大于4个通配符的情况

    {

        MessageBox("通配符个数1-4");

    }

    m_nCommonNum = nCount;

    UpdateData(false);

    EnableWnd(nCount); // 根据通配符的个数确定控件的可用程度

    // TODO: Add your control notification handler code here

}

  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089