在静态文本控件上设置图标

Posted

技术标签:

【中文标题】在静态文本控件上设置图标【英文标题】:Set Icon on Statictext Control 【发布时间】:2015-10-21 08:34:39 【问题描述】:

如何在 MFC 中的 StaticText 控件上设置和图标?

我正在尝试:

  static_cast<CStaticText*>(txt)->SetIcon(AfxGetApp()->LoadIcon(IDC_ICON));

代码行被执行。但是文本控件现在显示图标。

我错过了什么吗?

【问题讨论】:

在对话框编辑器中,将图片控件拖放到对话框中。然后转到控件的“属性”窗口,将“类型”更改为“图标” 我不允许使用图片控件:(所以实际上我必须 我不知道您所说的“我不允许”是什么意思。这是一个静态控制。另请参阅连字符的答案。 有一些设备相关的问题,我无法使用图片控制。我必须使用 cbutton 或 statictext 。我发现用 cbutton 解决了。 【参考方案1】:

确保您在对话框上放置了一个静态图像/图标控件,而不是静态文本控件。

您可以从资源文件中验证:

BEGIN
    CTEXT           "",IDC_STATIC_ICON1,10,84,300,20
    ICON            "",IDC_STATIC_ICON2,102,137,20,20
END

第一个是文本类型,第二个是图标。你应该使用第二个。

【讨论】:

【参考方案2】:
    CButton* btn
    btn->SetIcon(AfxGetApp()->LoadIcon(IDI_IMG));

【讨论】:

你不应该使用LoadIcon — ***.com/a/23853121/383779

以上是关于在静态文本控件上设置图标的主要内容,如果未能解决你的问题,请参考以下文章

MFC静态文本控件怎么设置字体

静态文本和按钮

如何防止静态控件中的文本被剪切?

mfc怎么修改静态文本控件文字颜色

Windows static控件(静态文本框控件)

MFC设置静态文本框,编辑框等控件背景和字体颜色