QT开发中文网

indicator怎么表示圆形

要使 CheckBoxindicator 表示为圆形,可以使用 QML 中的 Ellipse 组件或调整 Rectangle 的属性,使其看起来像一个圆形。下面是如何实现这一点的示例:

使用 Rectangle 制作圆形指示器

import QtQuick 2.15
import QtQuick.Controls 2.15

ApplicationWindow {
    visible: true
    width: 400
    height: 300

    CheckBox {
        x: 120
        y: 140
        id: control
        checked: true
        text: qsTr("安徽省马大")

        indicator: Rectangle {
            width: 20; 
            height: 20;
            color: control.checked ? "green" : "red"
            border.color: "black"
            radius: width / 2 // 设置圆角半径为宽度的一半,以形成圆形

            Text {
                anchors.centerIn: parent
                text: control.checked ? "✓" : ""
                font.pixelSize: 16 
                color: "white" 
            }
        }

        MouseArea {
            anchors.fill: parent // 填充整个 CheckBox 区域以响应点击事件
            
            onClicked: {
                control.checked = !control.checked; // 切换选中状态
            }
        }
    }
}

使用 Ellipse 创建圆形指示器

如果你想直接使用 Ellipse,可以如下所示:

import QtQuick 2.15
import QtQuick.Controls 2.15

ApplicationWindow {
    visible: true
    width: 400
    height: 300

    CheckBox {
        x: 120
        y: 140
        id: control
        checked: true
        text: qsTr("安徽省马大")

        indicator: Ellipse {
            width: 20; 
            height: 20;
            color: control.checked ? "green" : "red"

            Text {
                anchors.centerIn: parent
                text: control.checked ? "✓" : ""
                font.pixelSize: 16 
                color:"white"
            }
        }

        MouseArea {
            anchors.fill: parent // 填充整个 CheckBox 区域以响应点击事件
            
            onClicked:{
                control.checked = !control.checked; // 切换选中状态 
           }
       }        
   }  
}

示例解析:

  • 在第一种方法中,使用了 Rectangle 和设置了 radius 属性来创建一个圆形效果。
  • 在第二种方法中,直接使用了 Ellipse,它本身就是一个圆形。
  • 两种方式都通过颜色变化和文本显示来反映复选框的状态。

你可以根据自己的需求选择其中一种实现方式!如果有其他问题或需要进一步的帮助,请随时告诉我!


内容由零声教学AI助手提供,问题来源于学员提问

目录导航
  • 使用 Rectangle 制作圆形指示器
  • 使用 Ellipse 创建圆形指示器
  • 示例解析:
  • 本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
    转载请注明出处:https://qt.0voice.com/?id=12685

    分享:
    扫描分享到社交APP
    上一篇
    下一篇
    发表列表
    游客 游客
    此处应有掌声~
    评论列表

    还没有评论,快来说点什么吧~

    联系我们

    在线咨询: 点击这里给我发消息

    微信号:3007537140

    上班时间: 10:30-22:30

    关注我们
    x

    注册

    已经有帐号?