下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 [精品]VC编程实现IE风格的界面之叙述

[精品]VC编程实现IE风格的界面之叙述.doc

[精品]VC编程实现IE风格的界面之叙述

吴于秀
2017-10-16 0人阅读 举报 0 0 暂无简介

简介:本文档为《[精品]VC编程实现IE风格的界面之叙述doc》,可适用于高等教育领域

精品VC编程实现IE风格的界面之叙述VC编程实现IE风格的界面之叙述【简介】使用过IE浏览器的朋友都知道IE界面上的扁平工具条、地址栏扁平工具栏上的按钮正常状态下为扁平态按钮上的图像为灰色当鼠标放在按钮上时按钮突起(这种状态称为手柄)并且其上的图像变得鲜艳醒目一些按钮上还有汉字说明或标有小黑三角的下拉按钮单击时显示下拉菜单这些技术是怎么实现的呢本文针对这些问题介绍了如何利用VC编程来实现它们。【正文】IE风格的实现主要在主框架类的CMainFrame::OnCreate()实现它的主要思想如下:首先定义一个CReBar对象用以作工具条、地址栏的容器然后分别声明图像列表对象img用于存储工具栏上按钮的热点图像和正常状态下显示的图像。为了显示扁平工具栏需要用CreateEx()函数创建CToolBar对象mwndToolBar用ModifyStyle()函数将工具栏的风格设为扁平类型你不能用CToolBar::Create()或CToolBar::SetBarStyle()设置这种新风格。CToolBar类不支持TBSTYLEFLAT。要解决这个问题必须绕过CToolBar类使用CWnd::ModifyStyle()。工具栏对象调用SetButtonInfo()设置按钮的风格为TBSTYLEDROPDOWN就可以将工具栏按钮设置为附带有下拉按钮。至于按钮带有中文提示用工具栏的SetButtonText()就可以轻松实现了。下面是实现IE风格界面的部分代码和注释:intCMainFrame::OnCreate(LPCREATESTRUCTlpCreateStruct){CReBarmwndReBar声明CReBar对象CImageListimg声明图像列表对象CStringstrif(CFrameWnd::OnCreate(lpCreateStruct)==)returnif(!mwndReBarCreate(this))创建CReBar对象{TRACE("Failedtocreaterebarn")returnfailtocreate}if(!mwndToolBarCreateEx(this))创建工具条对象{TRACE("Failedtocreatetoolbarn")returnfailtocreate}setuptoolbarpropertiesmwndToolBarGetToolBarCtrl()SetButtonWidth(,)file:设置工具条上按钮的最大、最小尺寸mwndToolBarGetToolBarCtrl()SetExtendedStyle(TBSTYLEEXDRAWDDARROWS)file:工具条可以带有下拉按钮imgCreate(IDBHOTTOOLBAR,,,RGB(,,))file:向图像列表装载热点图像资源IDBHOTTOOLBAR为热点图像资源IDmwndToolBarGetToolBarCtrl()SetHotImageList(img)工具条装载热点图像imgDetach()imgCreate(IDBCOLDTOOLBAR,,,RGB(,,))file:图象列表装载正常状态的图像资源IDBCOLDTOOLBAR为图像资源IDmwndToolBarGetToolBarCtrl()SetImageList(img)将图像装入工具条imgDetach()mwndToolBarModifyStyle(,TBSTYLEFLATTBSTYLETRANSPARENT)file:工具条为扁平风格mwndToolBarSetButtons(,)工具条上有个按钮setupeachtoolbarbuttonfile:以下分别对九个按钮分别设置风格和按钮汉语提示mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTONTBSTYLEDROPDOWN,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTON,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)mwndToolBarSetButtonInfo(,IDBUTTON,TBSTYLEBUTTONTBSTYLEDROPDOWN,)strLoadString(IDSBUTTON)mwndToolBarSetButtonText(,str)file:重新调整按钮的尺寸CRectrectToolBarmwndToolBarGetItemRect(,rectToolBar)得到工具条第一个按钮的尺寸mwndToolBarSetSizes(rectToolBarSize(),CSize(,))file:第一个参数为按钮尺寸第二个参数为图像尺寸file:创建一个组合框作为地址栏if(!mwndAddressCreate(CBSDROPDOWNWSCHILD,CRect(,,,),this,AFXIDWTOOLBAR)){TRACE("Failedtocreatecomboboxn")returnfailtocreate}file:加入工具栏、地址栏mwndReBarAddBar(mwndToolBar)strLoadString(IDSADDRESS)mwndReBarAddBar(mwndAddress,str,,RBBSFIXEDBMPRBBSBREAK)file:定义REBARBANDINFO对象,对工具条和地址栏设置理想尺寸REBARBANDINFOrbbirbbicbSize=sizeof(rbbi)rbbifMask=RBBIMCHILDSIZERBBIMIDEALSIZERBBIMSIZErbbicxMinChild=rectToolBarWidth()rbbicyMinChild=rectToolBarHeight()rbbicx=rbbicxIdeal=rectToolBarWidth()*mwndReBarGetReBarCtrl()SetBandInfo(,rbbi)设置工具栏尺寸rbbicxMinChild=CRectrectAddressrbbifMask=RBBIMCHILDSIZERBBIMIDEALSIZEmwndAddressGetEditCtrl()>GetWindowRect(rectAddress)rbbicyMinChild=rectAddressHeight()rbbicxIdeal=mwndReBarGetReBarCtrl()SetBandInfo(,rbbi)设置地址栏尺寸mwndToolBarSetBarStyle(mwndToolBarGetBarStyle()CBRSTOOLTIPSCBRSFLYBYCBRSSIZEFIXED)if(!mwndStatusBarCreate(this)!mwndStatusBarSetIndicators(indicators,sizeof(indicators)sizeof(UINT))){TRACE("Failedtocreatestatusbarn")returnfailtocreate}return}以上代码在Windows和VisualC环境下编译通过程序运行正常有兴趣的朋友可以动手亲自实验一下。

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/6

[精品]VC编程实现IE风格的界面之叙述

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利