MenuBar和窗口尺寸计算的问题,一直没找到资料,求教

acejoy 2010-05-31 02:11:41
下面的代码,是样例工程MiniPIE中的代码,测试后,发现一个问题,就是menubar的尺寸不对。下面的代码执行后,在menubar上方,会多出一个,高度一样的控件,左边白色,右边深色,却又不能点击和处理。想改进代码去除,却发现去除后,会导致那块的内容无法浏览,被“盖住”了。

// Create a menubar
// (mbi was initialized above)
mbi.hwndParent = m_hWnd;
mbi.nToolBarId = IDR_MAIN_MENUBAR; // ID of toolbar resource
mbi.hInstRes = _AtlBaseModule.GetResourceInstance();
CBR(SHCreateMenuBar(&mbi));
m_menuBar = mbi.hwndMB; // save menu bar HWND

// Compute RECT for initial size and position.
// The following code should compute RECT appropriately
// on both Pocket PC and Smartphone. It should function correctly
// whether SIP is on or off, and
// whether device is in portrait or landscape mode.
// (rcMainWindow was initialized above)
VERIFY(SystemParametersInfo(SPI_GETWORKAREA, 0, &rcMainWindow, 0));

// (rcMenuBar was initialized above)
m_menuBar.GetWindowRect(&rcMenuBar);
rcMainWindow.bottom = rcMenuBar.top;

// SIP state - SIP 这段去除,颜色不一的“bar”消失,但是显示网页不全
// (si was initialized above)
if (SHSipInfo(SPI_GETSIPINFO, 0, &si, 0) &&
(si.fdwFlags & SIPF_ON) && (si.fdwFlags & SIPF_DOCKED))
{
rcMainWindow.bottom = si.rcVisibleDesktop.bottom;
}


MoveWindow(&rcMainWindow);

...全文
180 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
acejoy 2010-06-03
  • 打赏
  • 举报
回复
中文叫什么 - 选项卡。
acejoy 2010-06-03
  • 打赏
  • 举报
回复
我知道那个问题了,但是不知道如何处理。

那个栏,是IE的标签浏览栏,在WM上面,打开IE,浏览网页,标签栏目显示网页的标题。但是不知道如何去除这个标签栏目。

查了IWebBrowser2接口说明,似乎没有任何地方有说明。
88csdn 2010-06-01
  • 打赏
  • 举报
回复
没见过,不是IE那个正在连接的控件啊?
egmkang 2010-06-01
  • 打赏
  • 举报
回复
窗口创建的时候,大小是不包含MenuBar的,那么就需要自己把窗口的大小Move正常
先获取MenuBar的区域,算出窗口的Bottom.然后再Move,那段代码写的应该比较简单吧
acejoy 2010-06-01
  • 打赏
  • 举报
回复
是正在连接,下面的那个!介于menubar菜单和“正在连接”之间的。
acejoy 2010-05-31
  • 打赏
  • 举报
回复
不能发图,是否没人看到过那个效果?

7,657

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧