如何实现工具栏右面的下拉箭头?

bright2k 2003-06-14 08:02:48
就是工具栏不能完全显示出来时,
右面会出现的那个>>形状的肩头,
就像ie里那样
...全文
79 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zwvista 2003-06-15
  • 打赏
  • 举报
回复
直接在AppWizard里应用Rebar就行了
zwvista 2003-06-15
  • 打赏
  • 举报
回复
这是Rebar的特征,不是工具栏
ggw 2003-06-15
  • 打赏
  • 举报
回复
wangjs720(听雨舟) :
请问何以得知需要此函数,用classwizard是怎么操作?
void CMainFrame::OnToolbarDropDown(NMTOOLBAR* pnmtb, LRESULT *plr)

wangjs720 2003-06-15
  • 打赏
  • 举报
回复
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}

if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar\n");
return -1; // fail to create
}

// TODO: Delete these three lines if you don't want the toolbar to
// be dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

//
DWORD dwExStyle = TBSTYLE_EX_DRAWDDARROWS;
m_wndToolBar.GetToolBarCtrl().SendMessage(TB_SETEXTENDEDSTYLE, 0, (LPARAM)dwExStyle);

DWORD dwStyle = m_wndToolBar.GetButtonStyle(m_wndToolBar.CommandToIndex(ID_FILE_OPEN));
dwStyle |= TBSTYLE_DROPDOWN;
m_wndToolBar.SetButtonStyle(m_wndToolBar.CommandToIndex(ID_FILE_OPEN), dwStyle);

return 0;
}

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs

return TRUE;
}

/////////////////////////////////////////////////////////////////////////////
// CMainFrame diagnostics

#ifdef _DEBUG
void CMainFrame::AssertValid() const
{
CFrameWnd::AssertValid();
}

void CMainFrame::Dump(CDumpContext& dc) const
{
CFrameWnd::Dump(dc);
}

#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMainFrame message handlers

void CMainFrame::OnToolbarDropDown(NMTOOLBAR* pnmtb, LRESULT *plr)
{
CWnd *pWnd;
UINT nID;

// Switch on button command id's.
switch (pnmtb->iItem)
{
case ID_FILE_OPEN:
pWnd = &m_wndToolBar;
nID = IDR_MENU1;
break;
default:
return;
}

// load and display popup menu
CMenu menu;
menu.LoadMenu(nID);
CMenu* pPopup = menu.GetSubMenu(0);
ASSERT(pPopup);

CRect rc;
pWnd->SendMessage(TB_GETRECT, pnmtb->iItem, (LPARAM)&rc);
pWnd->ClientToScreen(&rc);

pPopup->TrackPopupMenu( TPM_LEFTALIGN | TPM_LEFTBUTTON | TPM_VERTICAL,
rc.left, rc.bottom, this, &rc);
}

祝你好运
kingcom_xu 2003-06-15
  • 打赏
  • 举报
回复
http://www.codeproject.com/docking/chevrons.asp
ggw 2003-06-15
  • 打赏
  • 举报
回复
MSDN->CToolBarCtrl, using中有一个详细的例子,我也在学习,但不知道怎样加上通知捕获函数(用classwizard怎样操作)?
bright2k 2003-06-15
  • 打赏
  • 举报
回复
那怎么让Rebar显示出这个特征呢,
bright2k 2003-06-15
  • 打赏
  • 举报
回复
错了,
上面说的是 wangjs720(听雨舟) 的程序
bright2k 2003-06-15
  • 打赏
  • 举报
回复
to: ggw(格格巫)
你的程序是工具栏上的下拉按钮,我想要的是整个toolbar右面的>>形状的下拉按钮

谢谢 kingcom_xu(我们去倒分吧,倒个MVP玩玩) 的文章,
回楼上,参数应该是 RBBS_USECHEVRON
FreeSeagull 2003-06-15
  • 打赏
  • 举报
回复
找到了,就是这个风格参数:CBRS_SIZE_DYNAMIC
bright2k 2003-06-14
  • 打赏
  • 举报
回复
没找到那个什么参数啊,
谁来告诉我
bright2k 2003-06-14
  • 打赏
  • 举报
回复
还有,
如何用SDK实现呢?
bright2k 2003-06-14
  • 打赏
  • 举报
回复
谢谢先,
可用什么参数呢?
FreeSeagull 2003-06-14
  • 打赏
  • 举报
回复
创建的时候设置上一个参数就可以了,具体哪个忘记了。
Ieonardesque 2003-06-14
  • 打赏
  • 举报
回复
rebar
随着通信电子技术的迅速发展,信息技术给家居行业产生了深远的影响,家居环境的智能化监控已经成为智能家居的一个重要的发展方向。人们逐渐对自己的生活提出一种更高的要求,他们需要一种智能化、可交互,并且融合现代创新科技的产品来改善他们的生活环境,使他们生活更加安全、舒适、便捷、智能。本文根据智能家居的发展背景和研究现状,并且从实用性和可行性角度出发,研究设计了一种基于STM32单片机的智能家居系统。该系统由一个多功能综合的技术系统组成,各个多功能子系统间具有协同配合能力。基于STM32单片机实现的功能子系统包括:智能温度检测,智能湿度检测,智能烟雾/火灾检测智能检测,无线传输,人机交互机构,风扇调节,报警模块。 整个系统分为前端51单片机采集板和后端STM32单片机接收板。 采集板使用DHT11温湿度传感器、MQ烟雾传感器完成室内家居环境的采集。然后通过nRFL24L01将采集到的数据发送给后端。接收板使用LCD1602完成数据显示、使用蜂鸣器模块报警,使用风扇驱动模块调节室内家居环境。本文完成了智能家居控制系统前端、后端软硬件的设计,使用Altium designer绘制了电路原理图,使用Keil C完成了51单片机和STM32单片机的编程与调试。 最后,对本文设计的基于STM32的智能家居控制系统进行部署调试。试验结果表明,该系统可成功应用在智能家居环境检测调节和火灾安全防护的领域,可提高家居生活智能化水平。

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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