兼容Qt4/Qt5版本Qml控件RoundRectangle
小编:啊南 238阅读 2021.01.15
可设置矩形圆角位置的控件。
文件导入属性
- radiusCorners: int
- 通过设置一个radiusCorners值,可控制圆角方向。
RoundRectangle { width: 100; height: 50 color: "lightblue" radius: 10 radiusCorners: Qt.AlignLeft | Qt.AlignRight | Qt.AlignTop | Qt.AlignBottom}示例属性文档
- radiusCorners: int设置圆角位置。
- radiusCorners可使用的值:
常量 |
值 |
描述 |
---|---|---|
Qt.AlignLeft |
0x0001 |
与左边缘对齐 |
Qt.AlignRight |
0x0002 |
与右边缘对齐 |
Qt.AlignTop |
0x0020 |
与顶部对齐 |
Qt.AlignBottom |
0x0040 |
与底部对齐 |
- radiusCorners可使用的组合值范围:
- 文章首发于微信公众号你才小学生
- 后续更新于Qtbig哥(qtbig.com)
/********************************************************** Author: Qtbig哥 WeChat Official Accounts Platform: nicaixiaoxuesheng (文章首发) Website: qtbig.com(后续更新) Email: [email protected] QQ交流群: 732271126 LISCENSE: MIT **********************************************************/ import QtQuick 2.0 Rectangle { id: root property int radiusCorners: Qt.AlignLeft | Qt.AlignRight | Qt.AlignTop | Qt.AlignBottom /* Default: */ /* Qt.AlignLeft | Qt.AlignLeft | Qt.AlignRight | Qt.AlignLeft | Qt.AlignLeft | Qt.AlignRight | Qt.AlignTop | Qt.AlignTop | Qt.AlignRight | Qt.AlignRight | None:0 Qt.AlignTop | Qt.AlignBottom Qt.AlignBottom Qt.AlignTop Qt.AlignBottom Qt.AlignBottom ***************** ************* *************** *************** ************* ***************** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ***************** ************* *************** *************** ***************** ************* */ Repeater { model: [ { x: 0, y: 0, visible: internal.aligns(Qt.AlignLeft | Qt.AlignTop), radius: root.radius }, { x: root.width - root.radius, y: 0, visible: internal.aligns(Qt.AlignRight | Qt.AlignTop), radius: root.radius }, { x: 0, y: root.height - root.radius, visible: internal.aligns(Qt.AlignLeft | Qt.AlignBottom), radius: root.radius }, { x: root.width - root.radius, y: root.height - root.radius, visible: internal.aligns(Qt.AlignRight | Qt.AlignBottom), radius: root.radius } ] Rectangle { x: modelData.x; y: modelData.y width: modelData.radius; height: width visible: !modelData.visible color: parent.color } } QtObject { id: internal function aligns(direction) { return (root.radiusCorners & direction) === direction } } }
相关推荐
- Qt加载XPM图像 XPM是一种基于ASCII编码的图像格式,一般用于创建图标。由于它是ASCII编码,很方便地在代码中使用。 Qt的QPixmap类支持XPM格式,原型如下:QPixmap::QPixmap(const char *const [] xpm)摘取Qt源码中的"严重警告"XPM图标:static const char* const c…
- 3DMAX提示和技巧 本主题标识使用 Civil View 的一些重要提示和技巧。常规使用屏幕分辨率至少为 1280x1024 的 Civil View。低于此分辨率时,一些面板将占用过多屏幕空间。 将视口设置为线框显示以达到最佳性能。 要尽可能简化用户界面,请在单个视口中工作并关闭 3ds Max 命令面…