社区
界面
帖子详情
如何改变对话框的菜单显示位置
shixie
2003-05-23 01:06:44
使用SetMenu(&menu);设置好了对话框的菜单后,菜单默认的显示位置是左上角,但我不想让它在哪里显示,如何让它在指定位置(CPoint)显示呢?
我想到的方法有:
1、做一个工具条,将要显示的菜单放到工具条上。再将工具条显示到对话框上;
2、做一排按钮,将要显示的菜单项依次放到按钮上;
不过我想问一下,有没有其它更好的方法来改变菜单显示位置呢?
哪位高手能告诉我?
...全文
288
3
打赏
收藏
如何改变对话框的菜单显示位置
使用SetMenu(&menu);设置好了对话框的菜单后,菜单默认的显示位置是左上角,但我不想让它在哪里显示,如何让它在指定位置(CPoint)显示呢? 我想到的方法有: 1、做一个工具条,将要显示的菜单放到工具条上。再将工具条显示到对话框上; 2、做一排按钮,将要显示的菜单项依次放到按钮上; 不过我想问一下,有没有其它更好的方法来改变菜单显示位置呢? 哪位高手能告诉我?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhanglingfei
2003-05-27
打赏
举报
回复
兄弟,给你一段代码,你看用不用得着。
//计算工具条位置
CRect rcClient;
CRect rcWindow;
GetClientRect(&rcClient);
GetWindowRect(&rcWindow);
GlobalLayout *playout;
playout=((CPatternDesignCADApp *)AfxGetApp())->GetGloballayoutPtr();
playout->SetWindowRect(&rcWindow);
playout->SetClientRect(&rcClient);
CSize srToolBar=
m_wndToolBar.CalcFixedLayout(FALSE,TRUE);
CSize szToolSelect=
m_wndToolSelectBox.CalcFixedLayout(FALSE,FALSE);
CSize szObjView=
m_wndObjViewBox.CalcFixedLayout(FALSE,TRUE);
CSize szColorBar=
m_wndColorBox.CalcFixedLayout(FALSE,TRUE);
CSize szNavigator=
m_wndNavigatorBox.CalcFixedLayout(FALSE,TRUE);
CSize szLayerBar=
m_wndLayerBox.CalcFixedLayout(FALSE,TRUE);
playout->SetSize(&szToolSelect,
GLOBALLAYOUT_TOOLSELECTSIZE);
playout->SetSize(&szColorBar,
GLOBALLAYOUT_TOOLCOLORSIZE);
playout->SetSize(&szNavigator,
GLOBALLAYOUT_TOOLNAVIGATORSIZE);
playout->SetSize(&szObjView,
GLOBALLAYOUT_TOOLOBJVIEWSIZE);
playout->SetSize(&szLayerBar,
GLOBALLAYOUT_TOOLLAYERSIZE);
// 浮动工具条。
int nPosY=(rcWindow.Height()-rcClient.Height())+srToolBar.cy;
FloatControlBar(&m_wndToolSelectBox,
CPoint(rcClient.left,nPosY), CBRS_ALIGN_LEFT);
nPosY-=(rcWindow.Height()-rcClient.Height());
FloatControlBar(&m_wndNavigatorBox,
CPoint(rcClient.Width()-szNavigator.cx,nPosY),
CBRS_ALIGN_LEFT);
nPosY+=(szNavigator.cy+20);
FloatControlBar(&m_wndObjViewBox,
CPoint(rcClient.Width()-szObjView.cx,nPosY),
CBRS_ALIGN_LEFT);
nPosY+=(szObjView.cy+20);
FloatControlBar(&m_wndColorBox,
CPoint(rcClient.Width()-szColorBar.cx,nPosY),
CBRS_ALIGN_LEFT);
nPosY+=(szColorBar.cy+20);
FloatControlBar(&m_wndLayerBox,
CPoint(rcClient.Width()-szLayerBar.cx,nPosY),
CBRS_ALIGN_LEFT);
return 0;
}
shixie
2003-05-26
打赏
举报
回复
菜单是系统默认的(SetMenu(&menu)),不知如何MoveWindow ?
syl08341
2003-05-23
打赏
举报
回复
MoveWinodow()
Android之用PopupWindow实现弹出
菜单
在使用UC-WebBrowser时,你会发现它...其实,它的本身是PopupWindow或者是AlertDialog
对话框
,在里面添加两个GridView控件,一个是
菜单
标题栏,一个是
菜单
选项。
菜单
选项视图的切换可以通过适配器的变换,轻松地实现。
鸡啄米:VS2010-MFC编程入门教程(1-55).docx
VS2010/MFC编程入门之十二(
对话框
:非模态
对话框
的创建及
显示
) VS2010/MFC编程入门之十三(
对话框
:属性页
对话框
及相关类的介绍) VS2010/MFC编程入门之十四(
对话框
:向导
对话框
的创建及
显示
) VS2010/MFC...
C#控件大全
1、数据
显示
控件 2、数据绑定和数据定位控件 3、文本编辑控件 4、信息
显示
控件 5、网页
显示
控件 6、从列表中选择控件 ...11、
对话框
控件 12、
菜单
控件 13、命令控件 14、用户帮助控件 15、分组控件 16、音频控件
MFC
对话框
添加
菜单
栏
MFC
对话框
添加
菜单
栏
C#
对话框
、
菜单
C#
对话框
和
菜单
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章