跳到主要内容

单选框(Checkbox)

单选框是一个可以点击并与用户产生交互的控件,其展示一个基本的标题和一个供用户操作的点击框。不论用户点击标题还是点击框,都可以和单选框产生交互。

在 HiEasyX 中,按钮的原型函数定义如下:

bool Checkbox(const HXString &Title, CheckboxProfile &Profile);

参数

参数含义默认取值
Title单选框的标题,展示在点击框右侧的文字
Profile单选框的资料结构体

返回值

如果单选框被选择为启用,则返回 true,否则返回 false

资料结构体

单选框的资料结构体定义如下:

struct CheckboxProfile {
bool Checked = false;
};
变量含义默认取值
Checked如果单选框是否被启用,若启用则返回 true,否则为 falsefalse

示例

该示例代码同样可以在代码仓库/example/EasyX/Checkbox.cpp 中找到。

#include <include/hex.h>
#include <include/impl/EasyX/hex_impl_easyx.h>

int main() {
initgraph(640, 480);

BeginBatchDraw();

HX::HXInitForEasyX();
HX::SetBuffer(GetWorkingImage());

setbkcolor(RGB(180, 180, 180));

HX::WindowProfile windowProfile;
windowProfile.Size = { 600, 400 };

while (true) {
cleardevice();

HX::HXBegin();

ExMessage message{};
while (peekmessage(&message)) {
HX::PushMessage(HX::GetHXMessage(&message));
}

HX::Window(HXStr("单选框控件示例"), windowProfile);

static HX::CheckboxProfile checkboxProfile;
if (HX::Checkbox(HXStr("这是一个单选框"), checkboxProfile)) {
// 单选框被启用
HX::Text(HXStr("你启用了单选框!"));
}

static HX::CheckboxProfile checkboxProfile2{ true };
if (!HX::Checkbox(HXStr("这是一个默认选中的单选框"), checkboxProfile2)) {
// 单选框没被选中
HX::Text(HXStr("你没有启用单选框!"));
}

static HX::CheckboxProfile checkboxProfile3{ true };
if (HX::Checkbox(HXStr("这是一个默认选中的单选框"), checkboxProfile3)) {
// 单选框没被选中
HX::Text(HXStr("你启用了单选框!"));
}

HX::End();
HX::Render();

FlushBatchDraw();

Sleep(1);
}

return 0;
}