C++ 控件ID在哪里定义?

来源:百度知道 编辑:UC知道 时间:2024/05/25 10:58:21
练习控件使用时,有一个控件本来ID是IDC_BUTTON_CLEAR2,后来被我改成了IDC_BUTTON_RESULT,并在资源文件里有如下改动:
PUSHBUTTON "结果",IDC_BUTTON_RESULT,263,11,39,14
我以为这里已经定义了,但编译产生错误如下:
J:\Visual C++ 实习记录\Windows通用高级控件\Windows通用高级控件.rc (114): error RC2104 : undefined keyword or key name: IDC_BUTTON_RESULT
我想到控件定义处进行修改,但在所有文件里没有找到CLEAR2(因为如果IDC_BUTTON_RESULT没有定义,那么定义处应该还是IDC_BUTTON_CLEAR2)。所以想请教一下:C++ 控件ID在哪里定义?

  1. 在 MS Visual Studio 环境下打开 .rc ,在 String Table 里可以改它的名字,不要改值。

  2. 用文本编辑改.rc,新手容易发生格式错误。

  3. 程序里h.cpp 里相应的名字替换成新的。

  • 控件是对数据和方法的封装。控件可以有自己的属性和方法。属性是控件数据的简单访问者。方法则是控件的一些简单而可见的功能。

  • 使用现成的控件来开发应用程序时,控件工作在两种模式下:设计时态和运行时态。

  • 在设计时态下,控件显示在开发环境下的一个窗体中。设计时态下控件的方法不能被调用,控件不能与最终用户直接进行交互操作,也不需要实现控件的全部功能。

  • 在 运行状态下,控件工作在一个确实已经运行的应用程序中。控件必须正确地将自身表示出来,它需要对方法的调用进行处理并实现与其他控件之间有效的协同工作。

在 MS Visual Studio 环境下 打开 .rc ,在 String Table 里可以改它的名字,不要改值.

用文本编辑改.rc,新手容易发生格式错误.

程序里.h,.cpp 里相应的名字替换成新的.

1、首先要知道这个控件的ID,通过ID来访问控件
要想获得控件上的文本,可以用GetDlgItemText这个函数
函数原型是int GetDlgItemText( int nID, CString& rString ) const;
第一个参数是控件的ID,第二个参数是用来接收控件文本的字符串(CString类型的)

2、例程:
HWND hWnd;
HWND hBtn;
int IDn = 0;
hWnd=::FindWindow(NULL,"那个窗口名称");
hBtn = ::FindWindowEx(hWnd,NULL,NULL,"按钮名称");
IDn = ::GetDlgCtrlID(hBt