c++ - Overlappig 小部件的 QT 自定义布局示例无法编译
问题描述
使用 QT 5.11,我试图重叠一系列小部件。使用谷歌,我发现了这个,它引用了Layout Management。我已经复制了源代码,但它没有编译。问题是头文件尝试使用 3 个不同的签名来初始化 QLayout,但这些签名都不存在。
CardLayout(QWidget *parent, int dist): QLayout(parent, 0, dist) {}
CardLayout(QLayout *parent, int dist): QLayout(parent, dist) {}
CardLayout(int dist): QLayout(dist) {}
这些签名都没有出现在 QLayout 的 4.8 或 5.12 文档中,而且我找不到任何关于此用法的参考。我错过了什么?
解决方案
卡片示例来自 Qt3(石器时代)。QLayout在Qt3中曾经有如下界面:
QLayout ( QWidget * parent, int margin = 0, int spacing = -1, const char * name = 0 );
QLayout ( QLayout * parentLayout, int spacing = -1, const char * name = 0 );
QLayout ( int spacing = -1, const char * name = 0 );
推荐阅读
- java - 一周中几天对 ArrayList 的自定义排序
- doit - 并行运行时等待依赖
- javascript - 从头开始创建 toUpperCase 函数时的问题
- c - c中的sizeof运算符对相同类型的指针在C中给出不同的结果
- kubernetes - Openshift vs Rancher,有什么区别?
- php - 指定为定义者的用户('mysql.infoschema'@'localhost')不存在 - 第一个 Laravel 项目
- c# - 插入 URL 的变量未显示在地址栏中
- python-3.x - Python 程序 ValueError:以 10 为底的 int() 的无效文字:
- php - 发布方法不适用于 IIS 重写规则
- flutter - 来自 FutureBuilder 的 Navigator.pop