MFC动态创建按钮怎么使它的大小自动调节

MFC动态创建按钮怎么使它的大小自动调节,第1张

按钮的tooltip设置为按钮对应文字以便当鼠标长时间悬停在按钮上时,d出tooltip显示完整的按钮文字。

“当超过窗口时要进行左右滚动”,那就要重写 m_pBtnCreate 类的OnDraw()函数来完成这个左右滚动

mfc 窗口大小变化时让窗口内部控件也一起随比例改变位置:

void CXTest2Dlg::OnSize(UINT nType, int cx, int cy)

{

CDialog::OnSize(nType, cx, cy);

// TODO: 在此处添加消息处理程序代码

//将窗口移动到合适位置和大小

CRect rc,rc0,rc1;

GetClientRect(&rc0);//先取得整个对话框的大小及位置

//设置Tab控件位置

rc1top=rc0top;

rc1left=rc0left+1;

rc1bottom=rc0bottom-30;

rc1right=rc0right-1;

if(GetDlgItem(IDC_TAB1)!=NULL)

{

GetDlgItem(IDC_TAB1)->MoveWindow(&rc1);

}

//设置时钟位置

rc1top=rc0bottom-20;

rc1left=rc0left+5;

rc1bottom=rc0bottom;

rc1right=rc0left+160;

if(GetDlgItem(IDC_CLOCKTEST)!=NULL)

{

GetDlgItem(IDC_CLOCKTEST)->MoveWindow(&rc1);

}

//设置关闭按钮位置

rc1top=rc1top-5;

rc1left=rc0right-200;

rc1bottom=rc1bottom;

rc1right=rc0right-120;

if(GetDlgItem(IDOK)!=NULL)

{

GetDlgItem(IDOK)->MoveWindow(&rc1);

}

//设置取消按钮位置

rc1left=rc0right-100;

rc1right=rc0right-20;

if(GetDlgItem(IDCANCEL)!=NULL)

{

GetDlgItem(IDCANCEL)->MoveWindow(&rc1);

}

//将三个对话框资源定位到Tab控件中

if(GetDlgItem(IDC_TAB1)!=NULL)

{

GetDlgItem(IDC_TAB1)->GetClientRect(&rc);

rc1top=rctop+20;

rc1left=rcleft+1;

rc1bottom=rcbottom-10;

rc1right=rcright-1;

tab1GetClientRect(&rc1);

tab1GetDlgItem(IDC_MSGINFO)->MoveWindow(&rc1);//移动第一个

rc1bottom=rcbottom-35;//第二个及第三个底部留出按钮位置

tab2GetDlgItem(IDC_BNSLIST)->MoveWindow(&rc1);

tab3GetDlgItem(IDC_MSGERRINFO)->MoveWindow(&rc1);

它是1978年由 Niklaus Wirth 在 ETH 创立的通用过程式语言。它与 Pascal 类似,具有系统编程和多重编程功能。

Ribbon是类似于office2007样式的界面,它替代了传统的MFC程序里的菜单和工具栏

MFC默认生成的Ribbon功能少,需要我们自己添加一些控件和等元素使界面好看

看下面的一个界面,是VC2010示例里的

看到它与默认Ribbon样式的区别:

工具自己设计,MFC提供的Ribbon控件基本都用上了;(位图)也是原资源没有的

那到底怎么实现呢?

可以注意到的是:类别由面板组成,面板由按钮或文本编辑框或进度条等控件组成

按钮都是有和文字组成,按钮通过按钮集合可以产生类似于下拉菜单的作用

观察这些按钮,可以发现有两类:小图标的按钮和大图标的按钮

小图标:像素16×16,32位

这个不是好办法,因为你涉及要的放大和缩小,这样会引起失真的。

你只能倒过来,按钮根据的大小而改变尺寸。我有写过自定义按钮皮肤的文章,里面用的是GDI+绘图,可以用到MFC上面。

>

以上就是关于MFC动态创建按钮怎么使它的大小自动调节全部的内容,包括:MFC动态创建按钮怎么使它的大小自动调节、MFC Activex控件设置对话框自动跟随控件大小和位置,为什么用GetClientRect获取不到对话框大小呢、怎么编辑基于mfcd的ribbon界面和按钮的大小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9339523.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存