gpt4 book ai didi

python - 将 QML 元素锚定到窗口

转载 作者:太空宇宙 更新时间:2023-11-04 10:49:19 26 4
gpt4 key购买 nike

我真的是 QML 的新手,我正在为在 QML 中定义基本布局而苦苦挣扎。如何将元素锚定到窗口,以便在用户调整窗口大小时调整大小?我想添加一个填充窗口中所有可用空间的矩形,但我还没有找到从 qml 文件内部执行此操作的方法。到目前为止,我发现的所有示例都使用固定的宽度和高度,但这意味着当窗口大小发生变化时,元素将保持其预设大小。

最佳答案

针对您的具体问题:

  1. 根据 parent ( sibling )锚定所有元素。
  2. 总是让你的顶级 qml 元素填充查看器空间,如解释的那样 here .

添加到它。每当您需要进行此类调整大小时,您需要从一侧向另一侧通知几何形状的变化。我的意思是,从 qml 到 C++ 或从 C++ 到 qml。

告诉 qml 在顶部窗口调整大小:

qml 中的顶级父元素不会收到任何有关调整小部件大小的信号。您需要手动执行此操作。

  1. 要获取顶部小部件实际调整大小的信息,您需要实现 resizeEvent功能。

  2. 无论何时调用您的实现,您都需要向 qml 端发出信号,表明发生了一些大小调整,因此顶层 qml 父级也应该自行调整大小。

告诉 C++ 在顶部 qml 元素中调整大小:

同样,您在 C++ 中的小部件将不会收到有关调整顶部 qml 元素大小的任何信号。您需要手动执行此操作:

  1. 从 C++ 端向 qml 公开一个类。
  2. 每当顶部 qml 元素发生变化时,调用此类的一个函数来通知此更改,并要求它也调整顶部小部件的大小。

您可以获得这些方法的基本概念 herehere .

关于python - 将 QML 元素锚定到窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14962613/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com