问题标签 [cbutton]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
233 浏览

fonts - 在 CButton mfc 上显示符号字体

我需要在 mfc 的 CButton 上显示符号字体。如何做到这一点?代码示例更有帮助。符号字体可以来自 webdings 或 cusotm 安装的字体。

我尝试了下面提到的代码,但它不起作用。我把这段代码放在对话框的 onpaint 方法中。

0 投票
1 回答
1536 浏览

visual-c++ - 移除 CButton 的白色边框

如何删除 CButton 上的白色边框?

我想并排放置两个按钮,每个按钮都有一个 BMP 图像,以便它们创建一个图像而没有白色间隙,但是当我重叠两个按钮时,我会得到一个白色边框。我试过了,DrawBorder(FALSE, TRUE);但它不起作用。

我该如何摆脱它?

0 投票
1 回答
583 浏览

visual-c++ - 移除 CButton 的视觉点击效果

有什么方法可以消除单击 CButton 的视觉效果吗?

我想将两个带有 BMP 的 CButton 并排放置,以便它们形成更大的图像,但我想删除点击的视觉效果 - 即被按下的图像。我怎样才能做到这一点?

0 投票
1 回答
1884 浏览

visual-c++ - c++ - mfc / 想要将位图添加到 cbutton。CButton 没有成员 setBitmap 并且 BM_SETIMAGE 也不能用于 sendMessage

这是我关于stackoverflow的第一个问题,我希望我做的一切都正确:S

如我的标题中所述,我正在使用 mfc 进行视觉工作室(2012)项目。我尝试向我的 cbutton 添加一个位图,该位图被插入到我的对话框的设计视图中。

我读过的所有帖子都描述了使用 setBitmap 或 sendMessage 来做到这一点。我总是尝试在对话框的 onInit() 函数中执行此操作。当我(尝试)像这样使用 setBitmap() 时:

它会导致 IntelliSense 错误:

IntelliSense:类“CButton”没有成员“setBitmap”

另一种尝试是使用 sendMessage:

首先,我遇到了另一个 IntelliSense 错误:

IntelliSense:标识符“BM_SETIMAGE”未定义

就像我在另一篇文章中读到的那样,我自己定义了“BM_SETIMAGE”:

现在代码可以编译了,但是按钮仍然没有显示位图……由于互联网上的每个帖子都使用这两种解决方案之一,我很无奈。有人知道有什么问题吗?如果没有,也感谢您的阅读:)

0 投票
1 回答
575 浏览

mfc - MFC 切换单选按钮延迟

我有一个单选按钮,它是 CDialog 中的 CButton。当用户单击单选按钮时,将OnClickedRadioButton调用该函数。

在里面OnClickedRadioButton我通过调用这个函数来切换按钮:

当我编译和运行程序时: (i) 如果选中单选按钮,我可以单击它来清除它。(ii) 如果未选中单选按钮,我单击它并且没有任何反应。但是,如果我单击不同的程序(即 Visual Studio),然后单击 CDialog,则单选按钮会选中。

我已经查看并尝试了函数Cwnd::UpdateDialogControlsCwnd::UpdateData,但我无法让这些来解决我的问题。

0 投票
1 回答
2255 浏览

c++ - OwnerDraw CButton mfc 焦点

如果我有 OK 和 Cancel,则使用标准按钮,默认为 OK,然后按右箭头,取消聚焦,然后按键盘上的 enter 调用取消按钮功能。

所有者绘制按钮不会发生这种情况。如果我按下右箭头,取消按钮将被聚焦,但按下键盘上的 enter 会调用 OK 按钮功能。

如何拥有具有标准行为的所有者绘制按钮?

这是我的课。

0 投票
1 回答
445 浏览

javascript - 在执行 cutsom CbuttonColumn 操作之前提示确认

我有一个自定义删除按钮,我想要的只是在删除操作发生之前进行某种确认。我已经尝试了多种方法,但到目前为止没有成功。

这是我的代码,我正在使用 CArrayDataProvider 因此必须为删除按钮创建一个模板。

0 投票
1 回答
240 浏览

c++ - 需要帮助了解 MFC CButton 的 SetTextMargin?

我需要一些指导来了解 SetTextMargin 如何为 CButton 工作。我想要做的是有一个具有 BS_LEFT 样式的 CButton 并使用 SetIcon 在将出现在左侧的按钮上设置一个图标。现在需要为文本设置一些边距,以便它不会太靠近图标。我有一些关于保证金应该是多少的计算。现在 CButton::SetTextMargin 接受一个 CRect 参数,我需要帮助理解我的 rect.right 和 rect.left 应该是什么。我已经尝试了各种测试,但我无法了解边距矩形是如何合并的。我对保证金和实际保证金的计算相差甚远。任何帮助,将不胜感激。谢谢!

0 投票
1 回答
940 浏览

winapi - CButton:使用 SetState 时意外调用 OnBnClicked()

我想单击一个按钮并将其显示为“按下”,直到计时器终止。

我遇到的问题是,我使用CButton::SetState(TRUE)的函数OnBnClickedButton1()总是被调用两次,更糟糕的是,当我按下对话框中的另一个按钮或隐藏对话框窗口时,它会再次被调用。

(更新:我现在已经在家里用 WindowsXP 在 VS6 下测试了相同的代码,它按预期工作正常。在工作中(VS2010 和 Window 10)这个代码不起作用。)

头文件

文件

0 投票
1 回答
2635 浏览

c++ - 如何更改 BackgroundColor OnMouseHover c++ MFC

我从 CWnd 派生了一个窗口,在其中创建了一些 OwnerDrawn 按钮。按钮是从 CButton 派生的。

现在,当用户将鼠标悬停在按钮上时,我想将其更改为 BackgroundColor。

因此,我已经实现了 OnMouseHover() 和 OnMouseLeave() 消息正在发送:

在调试器和间谍中,我可以看到代码被调用但没有任何反应。由于我对 MFC/c++ 比较陌生,我假设我没有正确使用 DC。有人可以解释我为什么它不工作以及如何修复它吗?