如果在运行时添加两个按钮,mfc按钮将不完整显示

时间:2013-01-17 09:50:05

标签: c++ c visual-c++ user-interface mfc

CButton *btn = new CButton();
btn->Create("btn", WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(0,0,50,50), this, 1234);
btn = new CButton();
btn->Create("btn", WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(40,30,50,50), this, 1234);

在CDialog :: OnInitDialog()中运行上面的代码只会正确显示第一个按钮,第二个按钮将不完整显示。

任何建议都表示赞赏。

1 个答案:

答案 0 :(得分:2)

您正在使用的CRect构造函数没有按照您的想法执行。 4 parameter override将左,右,上,下作为参数。你只是让矩形太小 - 没有什么不完整的。

顺便说一句,你给两个控件都有相同的控制ID 1234 - 这有潜在的危险 - 你应该给它们唯一的值。