嗨,我在 MFC 2010 上有两个对话框表单C++我想通过 form2 更改 from1 上的编辑控件。
我怎么能做到?
恕我直言,您不应该从一个窗体直接访问另一个窗体的控件。这在它们之间产生了不必要的紧密耦合,将一种形式的内部暴露到另一种形式。
我建议你实现一个公共资源库来标识目的,而不是可能在你不知情的情况下更改的控件 ID。
在目标形式中:
public:
void SetUserName(const char* name)
{
SetDlgItemText(IDC_EDIT1, name);
}
在调用方中:
form1.SetUserName("new text");
您使用SetDlgItemText
.
form1.SetDlgItemText(IDC_EDIT1, "new text");