- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我手动创建了两个包含许多项目的组框。一个分组框中的项目比第二个分组框中的项目多,这是一个布局问题。看图:
我测试将垂直间隔器插入“模拟”部分,但没有成功。
一段代码是:
...
groupBox2Layout = new QGridLayout;
groupBox2 = new QGroupBox();
groupBox2->setTitle("Analog");
for(int i=0; i<=15; i++)
{
QSlider *horizontalSlider = new QSlider(Qt::Orientation::Horizontal);
QComboBox *comboBox1 = new QComboBox();
comboBox1->addItems(analogPins);
QLineEdit *lineEdit1 = new QLineEdit("Slider " + QString::number(i));
groupBox2Layout->addWidget(horizontalSlider, i, 0);
groupBox2Layout->addWidget(comboBox1, i, 2);
groupBox2Layout->addWidget(lineEdit1, i, 3);
groupBox2->setLayout(groupBox2Layout);
}
groupBox2Spacer = new QSpacerItem(100,100, QSizePolicy::Expanding, QSizePolicy::Expanding);
groupBox2Layout->
...
我测试过
groupBox2Layout->addItem(groupBox2Spacer);有错误:masim.cpp:60:22: 错误:“addItem”是“QGridLayout”的 protected 成员qgridlayout.h:123:10: 注意:在此处声明为 protected
groupBox2Layout->addWidget(groupBox2Spacer);masim.cpp:60:22: 错误:没有匹配的成员函数来调用“addWidget”qgridlayout.h:102:17: 注意:候选函数不可行:第一个参数没有从“QSpacerItem *”到“QWidget *”的已知转换qgridlayout.h:103:10: 注意:候选函数不可行:需要至少 3 个参数,但提供了 1 个qgridlayout.h:104:10: 注意:候选函数不可行:需要至少 5 个参数,但提供了 1 个
无法找到另一种方法如何将 Spacer 添加到“模拟”组框......你能帮帮我吗?
最佳答案
note: candidate function not viable: requires at least 3 arguments, but 1 was provided
你必须使用这个公共(public)重载来添加间隔符
void addItem(QLayoutItem * item, int row, int column, int rowSpan = 1, int columnSpan = 1, Qt::Alignment alignment = 0)
因此您需要指定间隔符的行和列。
关于c++ - 如何将 qspaceritem 添加到 qgridlayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56858653/
是否可以在另一个 QGridLayout 中包含 QGridLayouts?我一直在尝试使用 UI 设计器来执行此操作,以便我可以统一调整所有 QGridLayouts 的大小。 这是我为了好玩而创建
我正在尝试使 QGridLayout 可滚动。它可能包含几个自定义小部件,小部件的数量不固定。当有超过 x 个小部件时,QGridLayout 必须是可滚动的,x 是任意数字。 问题是,当我使用 QS
我一直在试图弄清楚小部件的坐标是如何到达的。例如在 qt 文档中,我想知道这是如何完成的。 QGridLayout *layout = new QGridLayout; layout->ad
问题说明了一切。 我有一个 5 x 3 的网格。 看起来像这样 row 0: buttonA--buttonA--buttonA nothing buttonB--buttonB--butt
我有一个 QGridLayout并且需要删除其所有按钮,然后重新创建它们。 我尝试使用 count() 循环布局其次是 takeAt()删除返回的 LayoutItem的小部件。然而,出于某种原因,我
我想用QWidgets填充QGridLayout。 QWidgets 需要以从左上到右上的方式显示,并在每行填充 QWidgets 后继续向下填充。类似且熟悉的 GUI 的一个例子是 Apple 如何
我正在尝试将 Qgridlayout 用于我的 GUI。我希望减小 Qspin 的宽度,如图所示。有什么建议我该怎么做吗?谢谢 layout.addWidget(checkBoxVBG,1,0
我有一个 QTableWidget 和 6 个 QPushBotton 我想以这种方式将它们放在一个布局中 只是按钮之间的小间距 但是使用 QGridLayout 让它看起来像这样 代码: t
我正在使用 QGridLayout 添加一个 QPushButton 和一个 QTextEdit。但每当我隐藏和删除 QTextEdit 小部件 时,QPushButton 就会出现在 QTextEd
我正在使用 Qt5.5 为我的项目构建图形用户界面并尝试使用 QGridLayout。 第一个来源 此代码按我预期的方式工作。 QGridLayout * layout = new QGridLayo
不幸的是,我找到的这个问题的答案对我不起作用。我想我在某个地方犯了错误...... 我想向 QGridLayout 添加内容: int rows = 2; int columns = 2; for(i
我正在尝试创建一个如下所示的布局: _________ | | | |1 | 2 | |__|______| | 3 | 4 | |____|____| 基本上,我希望第一行的
我目前有一个 QGridLayout 的问题。 每个方 block 都是一个小部件,我有一个这样的循环 for(int i = 0; i layout->addWidget(new Square(th
我正在尝试创建一个程序,让用户可以通过三个选项来回答问题。我为此使用了 QGridLayout,但只显示了最后添加到 QGridLayout 的小部件。 预期: ###################
我有一个 QGridLayout 来处理我的小部件。事实上,它们留在我放置的列中,而没有扩展整个宽度。是否有任何选项可以告诉行完全展开?目标是模仿 QHBoxLayout 的行为,但不使用 QHBox
我对 QGridLayout 有疑问。我的布局的一行包含一个通常隐藏的元素 (QProgressbar)。当有一些进展要报告时,我会调用它。问题是,当我在 QProgressbar 上调用 show
我有一个这样设置的对话框: 除标题外,每个组件的属性都设置为默认值。我希望包含 label_3 的行与其他三行的高度相同(为了清楚起见,底部的行将展开以占用剩余空间,如图所示)。问题是复选框与文本框的
我有一个按钮,后面跟着一个充满小部件的 QGridLayout。我想在每次单击按钮时显示/隐藏 QGridLayout,但是阅读 QGridLayout 的文档我发现没有 show()/hide ()
下面是如何绘制一个跨越两列的按钮: #include int main(int argv, char **args) { QApplication app(argv, args);
是否可以通过某种方式设置 QGridLayout 列可以扩展到的最大宽度? 如果我为列内的小部件设置最大宽度,即使达到小部件大小限制,该列也会继续增长。 我是 Qt 的新手,所以也许我遗漏了一些东西.
我是一名优秀的程序员,十分优秀!