我想基本上用C ++创建一个窗口。它应该有一个类似结构的控制面板,可以选择切换按钮。按钮的图像应来自位图,一个用于ON,另一个用于OFF。
它应该有一系列这样的控制按钮,如控制面板。我应该可以切换ON / OFF。但我要用C ++构建这个小应用程序。请指导我开始并继续?
答案 0 :(得分:0)
你应该看看这些:
然后根据您的需要和优先选择。
编辑:
如果您使用的是Windows,则可以使用WinAPI。但是你在另一个操作系统中丢失了代码的可移植性。
答案 1 :(得分:-1)
不幸的是,C ++中的GUI并不那么简单。
您必须在某些时候与操作系统进行交互才能实现这一目标,这意味着您需要使用某种类型的库。
为了更好地回答您的问题(如评论中所述),您需要确定您要定位的操作系统类型?通常的三个是:
您提供了哪些信息: 我建议使用SFML Library或类似的东西。有可用的教程,它可以很好地跨平台工作。要打开一个窗口,你只需实例化一个类:
sf::Window window(sf::VideoMode(800, 600), "My window");
绘图按钮有点困难。 许多库提供了自己的解决方案,所以我将避免给出一个具体的例子,下面只是伪代码。 通常,您希望在用户单击时捕获,然后在屏幕上获取其鼠标/指针位置(x,y),并根据按钮矩形的每个角的边界进行检查:
if (ButtonPressed())
{
int currentX = GetMousePositionX();
int currentY = GetMousePositionY();
if (currentX > button.Left() &&
currentX < button.Right() &&
currentY > button.Top() &&
currentY < button.Bottom())
{
// The button is pressed
}
}
上面的代码示例假设MousePosition从窗口左上角的0,0开始,不同的库以不同的方式执行。因此,您需要检查您正在使用的库如何实现它。
您可能还想完全考虑使用GUI(如果这只是一个小项目,C ++中的GUI可能会非常困难)。