【问题标题】:C++ Win32 How to Create a "toggle" PushbuttonC++ Win32 如何创建“切换”按钮
【发布时间】:2013-08-22 00:18:20
【问题描述】:

我最初认为这将非常容易做到。 Google 搜索返回了除此之外的所有结果。

我正在尝试创建一个可以单击的普通按钮,然后它会一直向下,再次单击它会重新升起。

我找到了一个功能,可以满足我的需求,但只有在按钮保持焦点时才有效,单击其他任何位置并再次升起。

Button_SetState(GetDlgItem(hwnd, IDC_BTN_SLEEPCLICK), TRUE);

有什么真正的方法可以做到这一点吗?还是我需要手动做这种事情?

谢谢。

【问题讨论】:

    标签: c++ winapi button toggle


    【解决方案1】:

    创建一个复选框,然后将该复选框的“push like”属性设置为 true。

    【讨论】:

    • 谢谢,正是我需要的,这就是它的样子:hButtonSleep = CreateWindowEx(0, "BUTTON", "Sleep Click", WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX | BS_PUSHLIKE, 0, 0, 40, 19, hwnd, (HMENU)IDC_BTN_SLEEPCLICK, GetModuleHandle(NULL), NULL);
    【解决方案2】:

    你想要一个BS_PUSHLIKE 样式的复选框。要以编程方式切换它,请使用Button_SetCheck

    【讨论】:

      【解决方案3】:

      “保持向下”和“重新向上”是您如何绘制按钮的问题。

      您可以使用 Paint 和 Redraw 方法创建自己的按钮类。

      【讨论】:

        猜你喜欢
        • 2016-03-05
        • 2013-12-27
        • 1970-01-01
        • 2013-01-19
        • 2014-06-02
        • 2010-09-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多