单选框(Checkbox)
单选框是一个可以点击并与用户产生交互的控件,其展示一个基本的标题和一个供用户操作的点击框。不论用户点击标题还是点击框,都可以和单选框产生交互。
在 HiEasyX 中,按钮的原型函数定义如下:
bool Checkbox(const HXString &Title, CheckboxProfile &Profile);
参数
参数 | 含义 | 默认取值 |
---|---|---|
Title | 单选框的标题,展示在点击框右侧的文字 | 无 |
Profile | 单选框的资料结构体 | 无 |
返回值
如果单选框被选择为启用,则返回 true
,否则返回 false
。
资料结构体
单选框的资料结构体定义如下:
struct CheckboxProfile {
bool Checked = false;
};
变量 | 含义 | 默认取值 |
---|---|---|
Checked | 如果单选框是否被启用,若启用则返回 true ,否则为 false | false |
示例
该示例代码同样可以在代码仓库下 /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;
}