VC++实现数字小键盘

来源:百度知道 编辑:UC知道 时间:2024/06/08 21:59:58
制作一个3*4的数字小键盘,如何实现比较好?
现在的做法是放置不同的12个button,但是如果想改变button的字体大小或颜色需要给他们分别关联变量,然后设置,有没有更好的办法啊?
CFont font
font.CreateFont(30,30,0,0,0,0,0,0,0,0,0,0,0,NULL);
for(int i=0;i<12;i++)
{
GetDlgItem(IDC_BUTTON1+i)->SetFont(&font);

这样不行,是不是要这样
CFont font[12];

for(int i=0;i<12;i++)
{
font[i].CreateFont(30,30,0,0,0,0,0,0,0,0,0,0,0,NULL);
GetDlgItem(IDC_BUTTON1+i)->SetFont(&font[i]);

实验下GetDlgItem(IDNUMBER)->SetFont()。
把你的按钮控件id设成连续的,用一个循环很容易搞定了。

忘记提醒你注意font生存期,最好让它作为对话框的成员变量。或者把它放在onpaint里。