- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
考虑到布局是在 QWidget
中设置的,代码如下:
setLayout(new QVBoxLayout);
然后需要检索它(向布局添加更多内容)。这是通过以下代码完成的:
QHBoxLayout *hLayoutTime(new QHBoxLayout);
qobject_cast<QVBoxLayout*>(layout())->addLayout(hLayoutTime);
qobject_cast
是适合在这里使用的类型转换吗?
最佳答案
为了避免不必要的转换,这样写:
void YourWidget::setupContents()
{
QVBoxLayout *vLayout = new QVBoxLayout(this); // effectively this does setLayout(new QVBoxLayout);
QHBoxLayout *hLayoutTime(new QHBoxLayout);
vLayout->addLayout(hLayoutTime);
… … …
}
关于c++ - qobject_cast<QVBoxLayout*>(layout()),是否合适?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36503368/
我已经派生了 QGraphicsItem 和 QGraphicsScene 类。我希望这些项目能够调用 scene() 并获得一个 derviedGraphicsItem * 而不是 QGraphic
谁能用尽可能简单的术语(或尽可能简单)解释什么 qobject_cast是,它的作用以及为什么我们需要将一种类类型转换为另一种类类型? 比如,我在转换 int 的意义上进行了类型转换作为char或 Q
我刚刚在 Qt 中找到了以下代码,我有点困惑这里发生了什么。 尤其是reinterpret_cast(0)有吗? template inline T qobject_cast(const QObje
我有一个纯虚拟A类,我在上面做 Q_DECLARE_INTERFACE(A, "org.something.A") 我有一个实现为类 B 的插件,它继承了 A 和 QObject,具有接口(inter
我正在尝试用 Qt 编写一个应用程序,在我遇到这个愚蠢的问题之前,该应用程序运行得还算不错。我有一个 Node 类,它可以有一个指向 Workplace 类实例的指针。我还为该指针定义了 getter
在Qt documentation , 有一个使用 qobject_cast 的例子。 按照这个例子,我尝试了这个: #include #include #include void test_c
考虑到布局是在 QWidget 中设置的,代码如下: setLayout(new QVBoxLayout); 然后需要检索它(向布局添加更多内容)。这是通过以下代码完成的: QHBoxLayout *
我有一个由 QFutureWatcher 触发的插槽。我正在尝试转换发件人以获得结果 QFutureWatcher>* QFW = qobject_cast>*>(sender()); 但不断得到 e
我在 Qt 中实现低级插件,但偶然发现了一个奇怪的编译错误。 当我尝试使用 qobject_cast 将插件实例转换为 const 接口(interface)指针时,它告诉我接口(interface)
大师和模板专家,我需要你们的帮助... 我目前正在寻找一种检查 QObject 父层次结构的解决方案。我有一个具有以下层次结构(父到子)的自定义 QDialog: QDockWidget > Cust
我有一组相当复杂的 C++ 类,它们是用 Java 重写的。所以每个类都有一个继承类,然后它还实现了一个或多个抽象类(或接口(interface))。 是否可以使用 qobject_cast() 从类
来自Qt的计算器示例: void Calculator::digitClicked() { Button *clickedButton = qobject_cast(sender());
我有一个 Subclass 类,它是 QObject 的子类。我想知道项目何时被删除,所以我将这个插槽连接到 Subclass 继承的 QWidget::destroyed() 信号。但是,当我尝试使
我是一名优秀的程序员,十分优秀!