Roson讲Qt#16 QML中的anchors(锚)

article/2025/11/5 13:50:08

QML中有一个数据类型叫Item,Item里面有很多属性,其中一个就是anchors.

anchors翻译过来叫“锚”,锚可能不好理解,在我看来,可以把anchors当成是一个控件浓缩而成的一个点,可以通过设置点的上下左右等属性来控制界面外观,控制项与项之间的关系。

下面这个例子设置了:

以pic的水平方向上的中心作为lable的水平方向的中心

以pic的底部边框作为lable的上方边框

在label的上方设置5个像素的边距

下面这个例子设置了:

以pic的水平方向上的中心作为lable的水平方向的中心

以pic的右侧边框作为lable的左侧边框

在label的左侧设置5个像素的边距

 

那么肯定有人问了,Anchors到底有哪些属性可以进行设置呢,下面全部列举出来:

AnchorLine、Item、real、bool都是QML中的数据类型,real表示的是小数(注意:在QML中,所有实数都以双精度IEEE浮点格式存储)。其它的单词就没啥好解释的。

anchors.top : AnchorLine
anchors.bottom : AnchorLine
anchors.left : AnchorLine
anchors.right : AnchorLine
anchors.horizontalCenter : AnchorLine
anchors.verticalCenter : AnchorLine
anchors.baseline : AnchorLine
anchors.fill : Item
anchors.centerIn : Item
anchors.margins : real
anchors.topMargin : real
anchors.bottomMargin : real
anchors.leftMargin : real
anchors.rightMargin : real
anchors.horizontalCenterOffset : real
anchors.verticalCenterOffset : real
anchors.baselineOffset : real
anchors.alignWhenCentered : bool

其它注意事项

    margins适用于上、下、左、右和填充锚。anchors.margins可用于一次将所有不同的边距设置为相同的值。它不会覆盖之前设置的特定边界;要清除显式的边距,请将其值设置为undefined。请注意,边距是特定于锚的,如果项目不使用锚,则边距不起作用。
    offsets适用于水平中心、垂直中心和基线锚点。

    anchors.fill提供了一种方便的方式,使一个项目具有与另一个项目相同的几何形状,并等效于连接所有四个方向锚。
    要清除锚值,请将其设置为undefined。
    anchors.alignWhenCentered(默认为true)强制居中锚点对齐到整个像素;如果居中项的宽度或高度为奇数,则该项将被定位在整个像素上,而不是半像素上。这确保了项目是清晰的油漆。在某些情况下,这是不可取的,例如,当旋转项目时,由于中心是圆形的,抖动可能是明显的。
注意:您只能将item锚定到兄弟或父节点。

 


http://chatgpt.dhexx.cn/article/nRVlF36L.shtml

相关文章

Qml基于锚(anchors)的布局

锚(anchors)布局,每一个项目都可以认为有一组无形的锚线 left,horizontalCenter,right,top,verticalCenter,baseline和bottom. 如上图:图中没有显示baseline,它是一条假想的线,文本坐落在这条线上。对于没有文本的项目它与top相同…

RPN之生成anchors

看不懂anchor生成方法,就看不懂参数。 faster_rcnn的anchors生成 在这里我就不看faster_rcnn的anchors生成源代码了,我们用numpy自己去实现,在128*128大小的图片中生成anchors. 开始上代码 import numpy as np import matplotlib.pyplot …

Qml anchors锚点布局

关于qml的锚点布局的一些分享,并不能算是教学之类的。 锚点布局会自动设置宽度高度,并且优先级比 width height更高 import QtQuick 2.13 import QtQuick.Window 2.12 import QtQml 2.13Window {width: 640height: 480visible: truetitle: qsTr("a…

yolo_anchors.txt超参数值设置

keras-yolov3在训练自定义图片集之前,设置合理的yolo_anchors.txt值,有利于模型训练的收敛,一般都带有默认的参数如下: 在实际项目中,yolo_anchors的值可以根据kmeans.py计算获取,通过聚类得到最佳anchors数…

QML之anchors锚布局

QML的布局方式一般采用两种,一种就是直接设置,X与Y坐标的值。一种是采用相对位置布局,anchors锚布局。使用锚布局的能够使界面更紧凑,更有整体化。我个人相对比较喜欢使用锚布局,选取一个最合适的参考点,其…

YOLOV5源代码学习之check_anchors()函数

该函数主要在train.py中调用 为了方便直观的阅读代码,对代码中的变量值进行了输出 def check_anchors(dataset, model, thr4.0, imgsz640):# Check anchor fit to data, recompute if necessaryprefix colorstr(autoanchor: )print(f\n{prefix}Analyzing anchors.…

QML入门教程(3): anchors的用法

QML的布局方法是anchors,锚。 例如界面上四个按钮,可以用绝对坐标 (x, y) 设置他们的位置, 代码如下: import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 2.5Window {visible: truewidth: 320height: 480title: qsTr("Hello World")co…

目标检测2——借Detectron2源码理解Anchors与RPN

文章目录 1.Regionn Proposal Network背景2.Regionn Proposal Network的结构3.Anchors4.Regionn Proposal Network的训练参考资料 欢迎访问个人网络日志🌹🌹知行空间🌹🌹 1.Regionn Proposal Network背景 RPN,Region …

QML基础:锚anchors

正文 除了传统的Grid、Row和Column外,Qt Quick还提供了一种使用锚点的方法来布局。可以将每个元素视为具有7条不可见的“锚定线”的集合:left、horizontalCenter、right、top、verticalCenter、baseline和bottom。 baseline(上图未展示)对应于文本所在的虚线。对于没有文…

细说目标检测中的Anchors

本文转载自AI公园。 作者:Raghul Asokan 编译:ronghuaiyang 导读 给大家再次解释一下Anchors在物体检测中的作用。 今天,我将讨论在物体检测器中引入的一个优雅的概念 —— Anchors,它是如何帮助检测图像中的物体,以及…

anchors布局

anchors布局 import QtQuick 2.2 import QtQuick.Window 2.2 Window {visible: truewidth: 640height: 480title: qsTr("Hello World")Rectangle {width: 300;height: 200;color: "blue";Rectangle {id: rectl;anchors.left: parent.left;anchors.leftMar…

PDU Session Anchors

在同一时刻,UE可以建立多条到同一个DN或不同DN的PDU会话;建立到同一个DN的多个PDU会话时,通过不同的UPF;每条PDU会话对应的SMF可以不同。 为了支持到DN的可选择路由功能或支持SSC mode 3模式,SMF可以控制PDU session的…

kmeans++聚类生成anchors

kmeans聚类生成anchors 说明 使用yolo系列通常需要通过kmeans聚类算法生成anchors, 但kmeans算法本身具有一定的局限性,聚类结果容易受初始值选取影响。 因此通过改进原kmeans_for_anchors.py实现 kmeans聚类生成anchors。具体实现如下: i…

anchors如何获得_Yolov3通过k-means聚类得到自己数据的anchors

本文代码参考: https://github.com/lars76/kmeans-anchor-boxes Yolov3中默认的9个anchors是作者通过对voc数据聚类得到的。 anchors 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 不过,当我们训练自己的数据时,如果也采用默认的anchors,可…

Unity 锚点 Anchors

锚点介绍 锚点是Rect Transform组件中的属性,用于描述当前物体相对于父物体的对齐方式。 选中一个UI元素,就会显示其父物体的矩形框以及相对于父物体的锚点。 锚点只能位于父物体的矩形框之内。 锚点表现为四个相对出现的小三角形, 它们时而…

QML anchors 锚布局

锚布局 锚布局有7种锚线 anchors.leftanchors.rightanchors.topanchors.bottomanchors.horizontalCenteranchors.verticalCenteranchors.baseline 5种锚边距 anchors.leftMarginanchors.rightMarginanchors.topMarginanchors.bottomMarginanchors.margins 3种锚偏移 anchor…

anchors生成

关于修改anchor anchor与图片的输入分辨率有关系。 You should use this repository to get anchors: https://github.com/AlexeyAB/darknet By using this command for Yolo v3 (or v2): ./darknet detector calc_anchors data/hand.data -num_of_clusters 9 -width 720 -he…

使用k-means聚类anchors

在之前讲yolo理论基础知识时有提到过,从yolov2开始使用的anchors都是通过聚类得到的。如果想了解更多yolo相关的知识可以看看我在bilibili上录得视频:https://www.bilibili.com/video/BV1yi4y1g7ro 今天补下之前没有细讲的聚类anchors相关知识&#xff…

细说物体检测中的Anchors

点击上方“AI公园”,关注公众号,选择加“星标“或“置顶” 作者:Raghul Asokan 编译:ronghuaiyang 导读 给大家再次解释一下Anchors在物体检测中的作用。 今天,我将讨论在物体检测器中引入的一个优雅的概念 —— Ancho…

带图讲解,深度学习YOLO里面的anchors的进阶理解

如果有了解过yolo网络,那肯定也听说过anchors,当然anchors这个概念布置在YOLO里面才有,在其他的目标检测中也存在anchors这个概念。对于anchors计算的一些公式这篇文章就不进行讲解了,这篇文章主要是讲在训练网络模型过程中anchor…