QtDesigner怎么添加工具栏toolBar

QtDesigner怎么添加工具栏toolBar,第1张

在ResourceView里,双击Toolbar,双击IDR_MAINFRAME,就出现了工具条编辑界面,默认的最右边那个灰按钮就是用来添加新按钮的,双击它,会d出对话框让你给新按钮

首先需要修改工具栏的扩展风格,改为带向下的箭头

m_wndToolBar.GetToolBarCtrl().SetExtendedStyle(TBSTYLE_EX_DRAWDDARROWS)

然后才修改某个具体项的风格,改为下拉式

DWORD dwStyle=m_wndToolBar.GetButtonStyle(m_wndToolBar.CommandToIndex(ID_FILE_OPEN))

dwStyle|=TBSTYLE_DROPDOWN

m_wndToolBar.SetButtonStyle(m_wndToolBar.CommandToIndex(ID_FILE_OPEN),dwStyle)

还需要处理下拉消息

消息定义 afx_msg void OnToolbarDropdown(NMHDR*pnmh,LRESULT*plRes)

消息路由 ON_NOTIFY(TBN_DROPDOWN,AFX_IDW_TOOLBAR,OnToolbarDropdown)

void CMainFrame::OnToolbarDropdown(NMHDR*pnmh,LRESULT*plr)

{

//注意,这里VC6和VS2010略有不同

NMTOOLBAR* pnmbar = (NMTOOLBAR*)pnmh

CWnd*pWnd

switch(pnmbar->iItem)

{

case ID_FILE_OPEN:

pWnd=&m_wndToolBar

break

default:

return

}

CMenu menu

menu.LoadMenu(IDR_MENU1)

CMenu*pPopup =menu.GetSubMenu(0)

ASSERT(pPopup)

CRect rc

pWnd->SendMessage(TB_GETRECT,pnmbar->iItem,(LPARAM)&rc)

pWnd->ClientToScreen(&rc)

pPopup->TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_VERTICAL,rc.left

,rc.bottom,this,&rc)

}

放两个panel 在窗体上,都设置属性Dock 为 top , menu 放在上面panel里,toolbar放在下面的panel

Android Menu的文字有两种设置方式:

在 menu.xml中设置。

在java代码onCreateOptionsMenu中设置。

以下为示例代码:

在menu.xml中指定title即可

<item android:id="@+id/menu"

android:title="文字"/>

重载onCreateOptionsMenu(Menu menu)方法,并调用API。

menu.add((int groupId, int itemId, int order, charsequence title) .setIcon(drawable ID)

add()方法的四个参数,依次是:

1、组别,如果不分组的话就写Menu.NONE。

2、Id,这个很重要,Android根据这个Id来确定不同的菜单 。

3、顺序,哪个菜单项在前面由这个参数的大小决定 。

4、文本,菜单项的显示文本。


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

原文地址: http://outofmemory.cn/bake/11564973.html

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

发表评论

登录后才能评论

评论列表(0条)

保存