CMFCToolBar 怎么在对话框上创建,创建后不显示,怎么解决,求解答

lixiang li 40 信誉分
2024-05-09T07:41:19.79+00:00

BOOL CTESTDlg::OnInitDialog()

{

CDialogEx::OnInitDialog();

// 将“关于...”菜单项添加到系统菜单中。

// IDM_ABOUTBOX 必须在系统命令范围内。

ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);

ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE);

if (pSysMenu != nullptr)

{

	BOOL bNameValid;

	CString strAboutMenu;

	bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);

	ASSERT(bNameValid);

	if (!strAboutMenu.IsEmpty())

	{

		pSysMenu->AppendMenu(MF_SEPARATOR);

		pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);

	}

}

// 设置此对话框的图标。  当应用程序主窗口不是对话框时,框架将自动

//  执行此操作

SetIcon(m_hIcon, TRUE);			// 设置大图标

SetIcon(m_hIcon, FALSE);		// 设置小图标

// TODO: 在此添加额外的初始化代码

//CShellListCtrl.Create(WS_CHILD | WS_VISIBLE | WS_BORDER | WS_HSCROLL | WS_VSCROLL|LVS_REPORT, CRect(400, 400, 600, 550), this, 120);

for (int i = 0; i < 20; i++)

{

	str.Format(_T("item string %d"), i);

	//ComboBox.AddString(str);

}

if (!m_ToolBar.Create(this, AFX_DEFAULT_TOOLBAR_STYLE, IDR_TOOLBAR1))

{

	ASSERT(FALSE);

}

m_ToolBar.LoadToolBar(IDR_TOOLBAR1);

RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);![DT_V$(M`X6YVM{{2VW${GYQ](/api/attachments/86d3813a-b7d9-4b06-b639-26d7ac85bd4a?platform=QnA)
Visual Studio
Visual Studio
一系列 Microsoft 集成开发工具套件,用于生成适用于 Windows、Web 和移动设备的应用程序。
107 个问题
C++
C++
一种通用的高级编程语言,作为 C 编程语言的扩展而创建,除了用于低级别内存操作的功能外,还具有面向对象、泛型和功能性等特点。
147 个问题
{count} 票

接受的答案
  1. Minxin Yu 12,086 信誉分 Microsoft 供应商
    2024-05-09T10:00:48.06+00:00

    您好,
    使用以下代码

    	if (m_ToolBar.Create(this, AFX_DEFAULT_TOOLBAR_STYLE, 100))
    	{
    		m_ToolBar.SetPaneStyle(m_ToolBar.GetPaneStyle()
    			& ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_ANY));
    		m_ToolBar.LoadToolBar(IDR_TOOLBAR1);
    		CSize   sizeToolBar = m_ToolBar.CalcFixedLayout(FALSE, TRUE);
    		m_ToolBar.SetWindowPos(NULL, 0, 0, sizeToolBar.cx, sizeToolBar.cy,
    			SWP_NOACTIVATE | SWP_NOZORDER);
    	}
    

    如果答案是正确的,请点击“接受答案”并点赞。 如果您对此答案还有其他疑问,请点击“评论”。 注意:如果您想接收相关电子邮件,请按照我们的文档中的步骤启用电子邮件通知 此线程的通知。


0 个其他答案

排序依据: 非常有帮助

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。