首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 关于按钮控件添加的函数的问题 [已结帖,结帖人:jietion]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jietion
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-22 15:44:48 楼主
    我在view试图创建了几个按钮控件,可是应该怎么为它添加响应消息呢?例如
    就是按其中一个按钮下去的时候,就可以调用一个函数!
    我试过直接添加按钮的函数可是不成功!
    如果好像对话框那样为控件添加响应消息,可是又找不到按钮控件的ID号!
    这是怎么回事呢?
    请各位大虾指教!!
    120  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • mycool2001
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 15:54:451楼 得分:20
    先定义ID。
    比如 #define IDC_BUTTON_APP123 1050
    再创建,后响应WM_COMMAND消息
    BOOL CComDlg::OnCommand(WPARAM wParam, LPARAM lParam)
    {
    UINT nCode = HIWORD(wParam);
    UINT nID = LOWORD(wParam);
    HWND hwndItem = (HWND)lParam;
    switch(nCode)
    {
    case BN_CLICKED: //按钮被按下
    {
    if(nID == IDC_BUTTON_APP123)
    {
    }
    else if(nID == xxx) //应用按钮
    {
    }break;
    }
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • m_tornado
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 16:09:052楼 得分:20
    View里面添加控件,在创建的时候不是有按钮id么?

    先自己添加一个函数named: OnButtonClickedHere();

    在.cpp文件里添加宏定义:ON_COMMAND(id, OnButtonClickedHere);就可以了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • m_tornado
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 16:16:163楼 得分:10
    OnButtonCli...前面记得加自己的类名,不然还以为是global呢:)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jietion
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 17:19:014楼 得分:0
    看了上面两位大虾的指点还是不甚明瞭!
    不知道有没有那位大虾可以给个例子我看看!请大虾们帮帮忙,刚毕业现在一个人开发项目!第一份工作真的想把它做好!多谢!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • DailyJob
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 17:20:415楼 得分:20
    #define WM_MY_BUTTON (WM_USER + 1)

    .h里
    afx_msg void OnClickButton()


    .cpp里

    BEGIN_MESSAGE_MAP(CPageReal, CDialog)
    //{{AFX_MSG_MAP(CPageReal)
    ON_BN_CLICKED(WM_MY_BUTTON, OnClickButton)
    //}}AFX_MSG_MAP
    END_MESSAGE_MAP()

    //创建按钮
    myButton1.Create(_T("My button"),WS_CHILD|WS_VISIBLE,
      CRect(10,10,100,30), this,WM_MY_BUTTON );

    void CXXXView::OnClickButton()
    {
    AfxMessageBox("MyButtonDown");
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jszj
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 17:52:556楼 得分:10
    1. 弄一个空的对话框,上面放上一些按钮(个数视你要创建的个数而定)
    2. 在你创建按钮时,指定这些它们的ID和空对话框上的按钮ID一致
    3. 在你的视图中添加这些按钮的消息函数

    在第3步中,如果找不到这些ID,可以仿照其它的按钮消息来手工添加
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jietion
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-25 15:13:237楼 得分:0
    00
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhb1190
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-25 17:55:258楼 得分:10
    上面的方法都可以阿!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • shizhusz110
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-26 15:16:279楼 得分:10
    手动添加消息
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cxz1985
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-26 15:59:4510楼 得分:10
    引用 9 楼 shizhusz110 的回复:
    手动添加消息
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • liumeiqinyang
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-26 16:06:5111楼 得分:10
    顶 5 楼
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cnzdgs
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 6

      2

      15

    发表于:2008-08-26 16:19:4412楼 得分:0
    创建按钮的时候要指定按钮的父窗口和控件ID,在父窗口来响应按钮点击事件。可以用消息映射的方法,也可以重在OnCommand函数之类的函数自己来判断。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved