只需按下QToolButton即可将其移动到不同的布局
Move QToolButton to different layouts by just pressing it?
我这里有两种不同的布局,还有一个QToolButton。我的目标是在单击该按钮时在两个布局之间传输该按钮。我认为这段代码会起作用,
片段:
void DominionLinux::on_toolButton_clicked(string state)
{
if (state=="Disabled"){
ui->verticalLayout_Enabled->addWidget(ui->toolButton);
state = "Enabled";
}
else if (state=="Enabled"){
ui->verticalLayout_Disabled->addWidget(ui->toolButton);
state = "Disabled";
}
}
默认情况下,状态 == "已禁用"。当我在 QTCreator 中测试 UI 时,我第一次单击时,它可以工作;该按钮从一个模板中消失,并显示在另一个模板上。当我在另一个模板上单击时,我第二次单击时,它没有。编译时,我收到以下警告:*QMetaObject::connectSlotsByName: on_toolButton_clicked(字符串)没有匹配信号*
知道为什么插槽停止工作吗?
知道为什么插槽停止工作吗?
您在连接位置缺少信号声明,因为警告也暗示了这一点。此外,您似乎正在将插槽作为信号传递给连接方法。信号不应与Qt应用程序中的插槽同名。
除此之外,您可能需要重新考虑有关禁用和启用按钮的设计。将它们放入单独的层中并不是合适的方法。
此外,您可能应该避免使用原始字符串来表示一般状态。最好使用枚举或布尔值表示"切换状态"。
相关文章:
- 将对象移动到std::shared_ptr
- 何时在引用或唯一指针上使用移动语义
- 如何使用C/C++在MacOSX中获得键盘布局
- 如何从具有移动语义的类对象中生成共享指针
- 将shared_ptr移动到<StructA>shared_ptr<变体<结构A、结构 B>>
- C / C++ 移位/偏移/向左或向右移动位图?
- MSVC将仅移动结构参数解释为指针
- Vulkan验证层不断在VkQueuePresentKHR()上抛出图像布局错误
- 自定义先决条件对移动分配运算符有效吗
- 返回值优化:显式移动还是隐式
- 当有分配器意识的容器被复制/移动时,反弹分配器是否被复制/移走
- 为什么复制而不是移动数据元素?
- 可以使用移动语义更改或改进此C++代码吗?
- 使lambda不可复制/不可移动
- c++在使用指针时移动语义
- 布局兼容类型的并集
- Qt自定义QPush按钮未显示在布局上
- 将QGraphicsItem的移动区域限制在多边形区域内
- SendInput()鼠标移动计算
- 只需按下QToolButton即可将其移动到不同的布局