QML Row 与 RowLayout

2023-12-31

我正在尝试为我的应用程序编写一个顶栏,其中应主要包含应用程序徽标(小图像)和应用程序标题(仅文本)。此外,我希望这个顶栏能够根据窗口的高度自动调整大小。

我是 QML 新手,但我想我应该将这些组件包装在Row or a RowLayout https://blog.qt.io/blog/category/qt-quick-2/成分。这是我的示例代码:

import QtQuick 2.0
import QtQuick.Layouts 1.0

Rectangle
{
    id: mainwindow
    width: 1024
    height: 600

    Row
    {
        id: rowlayout
        height: logoimage.height
        spacing: 5

        property int count: 3

        anchors
        {
            left: parent.left
            right: parent.right
            top: parent.top
        }   

        Image
        {   
            id: logoimage
            source: "qrc:/images/resources/images/icon.png"
            height: mainwindow.height / 20
            anchors.top: parent.top
            anchors.left: parent.left
        }   
        Text
        {   
            id: logotext
            text: qsTr("This is my logo text")
            font.pixelSize: parent.height
            font.family: "Sans Serif"
            height: parent.height
            verticalAlignment: Text.AlignVCenter
            anchors.top: parent.top
            anchors.left: logoimage.right
        }
        /*
        Rectangle
        {
            id: otherrect
            height: parent.height
            color: "lightgreen"
            anchors.top: parent.top
            anchors.left: logotext.right
            anchors.right: parent.right
        }
        */
    }
}

我告诉Row组件的高度应遵循徽标的高度,并且Image(logo) 组件,其高度应为 1/20Rectangle(主窗口)组件。

Using a Row容器,代码的行为符合预期,但我收到一个恼人的警告(QML Row: Cannot specify left, right, horizontalCenter, fill or centerIn anchors for items inside Row. Row will not function.)而且我必须做很多锚定。相反,如果我使用RowLayout容器,我可以移除大部分锚点,但是Image完全忽略了它的height属性(但文本仍然可以正确调整大小)。所以问题是:

  1. 这是一个错误吗RowLayout成分?我在用着Qt-5.1.0-测试版有Android支持,所以这可以是一个解释
  2. 我怎样才能使用Row组件而不在其子组件中使用锚点从而避免警告?
  3. 我错过了一些重要的东西,或者我几乎走在正确的轨道上,但我必须忍受这个 Qt 测试版,直到发布稳定版本?

您说您使用 Row 获得了预期的行为,因此您可能应该使用它。 Row 给出的警告要求您从其子元素中删除垂直锚点(顶部和底部)。

Row 元素为其子元素提供类似水平(左和右)锚点的行为,但它不介意您是否使用顶部和底部锚点(请注意,顶部和底部不在警告中)。

换句话说,从“logoimage”、“logotext”和“otherrect”中删除“anchors.left”和/或“anchors.right”行(如果您计划在某个时候取消注释),但不删除“anchors.top” ” 行,这应该停止警告并保持正确的行为。

另一种方法是仅删除 Row 元素并使用 Item 或 FocusScope(如果您计划在“顶栏”区域中包含输入元素),这不会尝试接管锚定操作,并且可能更适合您如果你真的喜欢主播。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QML Row 与 RowLayout 的相关文章

  • 我可以在 Android 上使用带有文本视图的列表视图和图像图标吗

    我需要一个像下面的 Android 应用程序那样的列表视图 由于我无法发布图片 所以应该是这样的 图片在这里 一些自由文本 用户名等 这是你的任务 任务1 gt 任务2 gt 任务 1 和任务 2 是将从数据库动态获取的列表 我试图拥有一个
  • 表、TR各2个循环、PHP、HTML

    我有一个 html 表 我使用一些循环来获取一些数据 该数据以这种方式显示 tr td Data td tr next loop 但我不希望它每 2 个甚至 3 个循环关闭表行 tr 所以数据可能如下所示 tr td Data td td
  • 异步设计中如何知道哪个QNetworkReply属于QNetworkRequest?

    我可以轻松地用 C 进行异步设计 HttpResponseMessage response await httpClient GetAsync InputAddress Text run when request finished And
  • PHP/HTML 添加删除按钮

    我有下面的代码来从数据库中检索行 其中用户名列与基本目录名称匹配 username basename dirname FILE username mysql real escape string username result mysql
  • 如何通过代码改变Android SlidingDrawer的方向?

    当我从横向模式更改为纵向模式时 我无法找到设置 SlidingDrawer 方向的方法 反之亦然 最初我将 xml 的方向设置为垂直 当手机处于横向模式时 我需要将方向更改为水平 因此我将手柄放在左侧 有人有什么想法吗 我认为按照标准这是不
  • 调整 QML 图像显示尺寸

    我有一个带有嵌套的 QML 窗口RowLayout 在内排我有两个图像 来源 png这些图像的文件 故意 相当大 当我尝试设置height这些图像上的属性使它们变小 但它们仍然被画得很大 Desired Appearance Actual
  • 使用 jQuery Mobile 和响应式布局/CSS 媒体查询是否多余?

    我正在退房http mediaqueri es http mediaqueri es 今天发现这些网站非常适合移动设备 所以我想知道将 jQuery Mobile 和响应 自适应布局与媒体查询一起使用是否是多余的 因为仅使用媒体查询似乎是一
  • 如何在 C++ 运行时更改 QML 对象的属性?

    我想在运行时更改 QML 对象的文本 我尝试如下 但文本仍然为空 这是后端类 class BackEnd public QObject Q OBJECT Q PROPERTY QString userFieldText READ userF
  • (如何)我可以抑制未找到包配置文件的警告吗?

    我正在尝试创建一个CMakeLists txt尝试查找的文件Qt5 如果失败 则尝试回退到Qt4安装 该脚本到目前为止有效 但如果出现以下情况我总会收到警告Qt5未安装 注意FindQt5 cmake是由提供Qt5并且仅当以下情况时才可用Q
  • 如何将图像放在 UIButton 中文本的右侧?

    如果可以避免的话 我不想使用子视图 我想要一个UIButton其中包含背景图像 文本和图像 现在 当我这样做时 图像位于文本的左侧 背景图像 文本和图像都有不同的高亮状态 最简单的解决方案 iOS 10 及更高版本 Swift button
  • 根据Python中两行之间的匹配创建一个带有[0,1]的新列

    我正在尝试将多个列表或数据帧与一个大型基础数据帧进行比较 然后对于任何匹配 我想附加一个存储 1 匹配或 0 不匹配的列 df pd DataFrame Name A B C D ID 5 6 6 7 8 9 7 list1 5 6 8 9
  • Android - 状态栏阻止全屏

    我的应用程序启动时可以全屏正确运行 然而 在最小化然后返回应用程序后 状态栏会弹出 并将我的视图向下推一点 如何防止状态栏移动我的视图 这是我的布局
  • 如何使用CSS将文本放在“框”的右上角或右下角

    我怎样才能得到here and and here位于右侧 与 lorem ipsums 位于同一行 请参阅以下内容 Lorem Ipsum etc here blah blah blah blah lorem ipsums and here
  • 使用 Visual Studio 2013 构建 Qt 5.2.1 的静态版本

    几天来我一直在尝试使用 Visual Studio 2013 构建 Qt 的静态版本 我就是不明白我做错了什么 System Windows 7 64 位 Visual Studio 2013 仍安装 Visual Studio 2012
  • 新BFC“清”浮箱

    如示例所示 应用display inline block 到包含块似乎 清除 了其中的浮动框 wrapper inline block display inline block left column background color te
  • Qt 布局,在小部件大小更改后调整到最小大小

    基本上我有一个QGridLayout里面有一些小部件 最重要的是 2 个标签 我用它们将图像绘制到屏幕上 好吧 如果用户愿意 他可以更改传入图像的分辨率 从而强制标签调整大小 我们假设标签的初始大小是320x240 用户将 VideoMod
  • Android 布局不需要的填充

    所以我有这个布局文件 如下 正如您所看到的 没有填充或边距 dimen xml 文件也没有任何填充 边距 最后 我根本不以编程方式更改布局
  • 哪个 Swing 布局管理器可以获得我想要的布局?

    我正在尝试按照这个模型制作一个基本的登录菜单 我决定将整个菜单放入 JPanel 中 以便在连接成功后我可以切换到另一个面板 所以我决定使用 Borderlayout 将标题放在北区 将连接按钮放在南区 我将边框布局的中心本身设置为面板 我
  • 如何以编程方式向 datagridview 添加新行

    如果将行添加到DataTable DataRow row datatable1 NewRow row column2 column2 row column6 column6 datatable1 Rows Add row 怎么样DataGr
  • 如何防止布局的方向改变,而不是整个屏幕/活动的方向改变

    我需要一个子布局 可以是任何布局 例如FrameLayout or RelativeLayout 忽略方向变化并始终保持横向 但不是它的父级或任何其他兄弟布局 视图 它们应该相应地改变它们的方向 因此 我不能使用setRequestedOr

随机推荐

  • 有效的访问参数

    如何查找有效的访问参数 我查看了 menu router 但我相信这只给出了其中的一些 items admin page array access arguments gt array access administration pages
  • HMT collection_singular_ids=直接删除连接模型,不触发销毁回调

    刚刚遇到了 has many through 关联的问题 并且未触发 after before destroy 回调 假设我有用户 组和称为成员资格的中间关系 我有一个表单 允许用户在选中关联的复选框时通过创建新的成员记录来注册到组中 基本
  • 如何使用构建名称设置器插件?

    有谁知道是否有关于如何使用 jenkins 的构建名称设置器插件的用户手册 jenkins 插件网站似乎只有一个下载插件的链接 没有关于如何使用它的信息 https wiki jenkins ci org display JENKINS B
  • Jquery JQGrid - 如何设置网格标题单元格的对齐方式?

    jqgrid 中是否可以对齐网格列标题 例如左对齐或居中对齐 在 jqrid 文档中http www trirand com jqgridwiki doku php id wiki colmodel options http www tri
  • 是否可以在 sed 地址中进行简单的算术运算?

    是否可以在 sed 地址中进行简单的算术运算 判断通过 地址 手册部分 http www gnu org software sed manual sed html Addresses 答案似乎不是 但也许有一个解决方法 例如 如何打印文件的
  • 如何在给定范围内插入 1000 个随机日期?

    我是 SQL Server 新手 我需要生成从给定日期范围中选择的随机日期 就像雇员的受雇日期应该介于2011 01 01 and 2011 12 31 生成的日期应随机插入到 1000 行表中 任何人都可以指导我解答我的疑问吗 decla
  • Spring 集成和重试:我是否需要为每个服务激活器使用单独的重试 bean?

    我有一个 spring 集成管道 并且有许多不同的服务激活器 我想启用重试 我想使用相同的重试策略 即重试次数 退避策略等 我可以只使用一个实现重试策略的 bean 并将其用于多个不同的服务激活器 还是每个服务激活器都需要自己的重试 bea
  • 使用 sketch.js 为移动网页绘制画布会重置 ontouch

    我正在使用sketch js用于在 HTML5 画布上绘图的插件 虽然它在台式电脑上运行良好 但在移动浏览器上似乎存在一些问题 问题是如果我画两个不同的形状 一旦我触摸画布 它就会重置为空白 为了完全清楚 我会做并且example 绘制数字
  • 具有 ClipboardData 属性的 Angular2 组件

    我有一个 Angular2 组件 它具有从剪贴板粘贴数据的方法 inputPaste event let clipboardData event clipboardData 这种方式不适用于 IE10 但 IE 有一个带有属性 Clipbo
  • Firebase - 用户对事物的评论[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在构建一个 Android 应用程序 允许用户对广告牌前 100 名上的每首歌曲发表评论 我从 JSON 文件中解析了该信息 我将
  • 可以“跳过”行的数组公式

    我需要在谷歌电子表格中引入功能 该功能将允许用户编辑数组公式的结果 提出此要求的原因是 ARRAYFORMULA 为一组单元格设置默认值 但用户有时需要覆盖这些默认值 我想知道这是否有可能 example Row Array 1 Array
  • 算法:从一组游戏中选择成对的球队

    我正在尝试为体育联盟创建一个调度程序 我想将球队分组 以便每个球队每组进行一场比赛 我认为我正在尝试做的事情是计算机科学中现有的问题 但我不知道它叫什么 而且我很难找到有关它的信息 不管怎样 情况如下 假设我有一组团队A 1 2 3 n 以
  • 您在编写单元测试时最常犯的错误是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 您在编写单元测试时最常犯的错误是什么 耦合 缺乏凝聚力 尝试一次测试太多功能 没有测试足够的功能 如果您有该错误的示例 请发布一些示例代码 根本
  • 如何防止用户代理显示无法识别的 MIME 类型的下载窗口?

    如果您设置Content Disposition标头至attachment 这会导致用户代理始终显示该文件的下载窗口 我想做与此相反的事情 强制用户代理始终直接显示响应 在这种特殊情况下 我有一个发送 JSON 的 API 我想把它作为ap
  • Flexbox 项目多行文本溢出

    我有一个弹性物品 里面有很长的绳子 我想把它包裹起来 但这不起作用 I set flex 1 1 500px 例如 flex basis 500px 并且它应该用以下内容包裹字符串word wrap break word 但事实并非如此 而
  • Kinesis 流待处理消息计数

    我正在尝试将 AWS Kinesis 流用于我们的数据流之一 我想出于操作目的监视流上的待处理消息 根据积压向下游扩展 但无法找到任何在我的流中提供 大约 待处理消息的 API 这看起来很奇怪 因为消息在 7 天后就会过期 如果生产者和消费
  • Java 程序为音频文件创建 PNG 波形

    如何使用 Java 将 Wav 文件转换为 PNG 波形图像文件 java MyProgram class path to wav file path where to write png file 预期成绩 指定路径中保存的png是传入的
  • 更改 .png 以与 JpegImagesToMovie.java 一起使用

    我正在使用 JpegImagesToMovie java 将图像转换为 mov 文件 我想知道是否可以编辑它来处理 png 文件 因为视频的质量不是很好 更改它会改善它 ImageIO write img png new File C Us
  • 何时使用define_singleton_method v Define_method

    在一个答案中这个问题 https stackoverflow com questions 19368437 how to use define method inside initialize用户 mu 太短 解释说您不希望对象的行为在初始
  • QML Row 与 RowLayout

    我正在尝试为我的应用程序编写一个顶栏 其中应主要包含应用程序徽标 小图像 和应用程序标题 仅文本 此外 我希望这个顶栏能够根据窗口的高度自动调整大小 我是 QML 新手 但我想我应该将这些组件包装在Row or a RowLayout ht