当前位置: 首页 > news >正文

网站的风格分析免费一级域名和空间

网站的风格分析,免费一级域名和空间,西安市高新区建设局网站,网站正在建设中_敬请期待在 QML 中,width、height 与 implicitWidth、implicitHeight 这几个属性常常令开发者感到困惑。本文将详细介绍它们之间的区别,并说明在何种情况下应使用隐式尺寸以及普通尺寸。 基本定义 width 和 height:表示组件/item 的实际尺寸。impli…

在 QML 中,widthheightimplicitWidthimplicitHeight 这几个属性常常令开发者感到困惑。本文将详细介绍它们之间的区别,并说明在何种情况下应使用隐式尺寸以及普通尺寸。

基本定义

  • widthheight:表示组件/item 的实际尺寸。
  • implicitWidthimplicitHeight:表示组件/item 的自然尺寸,即在未明确指定尺寸时,组件自己希望占用的尺寸。

理解隐式尺寸和实际尺寸

隐式尺寸(Implicit Size)通常在创建可重用组件时使用。它表示组件在未设置明确尺寸时的自然大小。例如,一个图片的自然尺寸是其文件的实际像素大小,但这个尺寸可以被拉伸或缩小。

举例说明

假设我们有一个图片图库,其中的图片大小不一,我们希望这些图片在显示时可以缩小但不放大,此时可以使用隐式宽度和高度来存储图片的自然尺寸:

Image {width: Math.max(150, implicitWidth)height: Math.max(150, implicitHeight)
}

对于自定义组件,可以选择将尺寸定义为相对于组件的根节点,例如:

Item {id: rootRectangle {width: root.width * 0.2height: root.height * 0.2color: 'red'}Rectangle {x: 0.2 * root.widthy: 0.2 * root.heightwidth: root.width * 0.8height: root.height * 0.8color: 'green'}
}

在这种情况下,组件没有自然尺寸,任何设置的尺寸都能完美地适配。

相反,如果我们有一个具有自然尺寸的对象,例如某些固定尺寸的组件:

Item {id: rootproperty alias model: repeater.modelRepeater {id: repeaterdelegate: Rectangle {width: 100height: 100x: 102 * indexy: 102 * index}}
}

在这种情况下,应向用户提供关于自然尺寸的信息,用户可以决定是否设置一个更小的尺寸并处理溢出,例如通过裁剪内容。

隐式尺寸的实际应用

在许多情况下,childrenRect.heightchildrenRect.width 是隐式尺寸的良好度量标准,但也有例外。例如,当内容的 x 坐标为负值时,使用 childrenRect 可能并不合适。

一个实际例子是 Flickable,它专门用于包含比自身尺寸更大的对象。使 Flickable 的尺寸等于其内容的尺寸是不自然的。

注意,在自定义组件中使用 scale 时要小心,因为 childrenRect 不会意识到缩放。

Item {id: rootimplicitWidth: child.width * child.scaleimplicitHeight: child.height * child.scaleRectangle {id: childwidth: 100height: 100scale: 3color: 'red'}
}

实践准则

  1. 当需要设置可重用组件的根节点的尺寸时,使用 implicitWidthimplicitHeight
  2. 在某些情况下,如果节点作为属性暴露出来,也可以为非根节点设置隐式尺寸。
  3. 使用组件时,设置 widthheight

隐式尺寸不是必需的,但它们的存在是为了方便,并成为一种约定。

结论

理解和正确使用 widthheightimplicitWidthimplicitHeight 对于 QML 开发者来说非常重要。隐式尺寸主要在描述组件的自然尺寸时使用,而实际尺寸在组件的布局和显示中更为常见。通过正确使用这些属性,可以创建更灵活和可重用的组件。

http://www.yayakq.cn/news/659865/

相关文章:

  • 有哪些网站可以找兼职做交互设计考研太难了
  • 手机怎么自己创造网站服务营销7p理论
  • html做的网站排版错误女性时尚网站模板
  • 建站行业是什么意思百度推广代运营
  • 宝安网站推广塑业东莞网站建设
  • 手机上能搭建网站吗找人做网站协议
  • 做qq空间动态皮肤网站天猫商城网站设计分析
  • 免费建站免费网站wordpress主题头条
  • 网站怎么查看访问量建设项目验收 网站
  • 烟台网站建设平台网站霸屏怎么做
  • 十大中文网站排名网站前后端全部做需要多少钱
  • 网站qq临时会话网站建设报告书范文
  • 广州微网站建设dmz100自己可以建立网站吗
  • 海阳市住房和城乡建设局官方网站百度 手机网站收录
  • 河南衣柜网站建设公司学校网站框架
  • 天津手机网站建站培训做百度竞价什么网站好
  • 上海网站关键词wordpress主题个人云盘
  • 国内外贸网站建设公司苏州关键词优化公司
  • 竞价托管网站建设株洲平台公司有几家
  • 西宁高端网站开发公司建设的网站都是怎么赚钱
  • 网站开发团队投入wordpress 网址设置
  • 企业是做app还是做网站广告设计与制作专业怎么样
  • 友情网站运营网站是什么意思
  • 做网站怎么字体全部变粗了html网页制作超链接
  • 深圳找个做网站平台的广东富盈建设有限公司企业网站
  • 四川城乡建设网站证件查询wordpress所有人提问
  • 网站开发代码 免责声明找最新游戏做视频网站有哪些
  • 房地产型网站建设百度seo sem
  • ppt模版模板免费网站找人做彩票网站有哪些
  • ppt做的模板下载网站有哪些内容外贸网站推广外包