Qml实用技巧:将样式style从对象中独立出来,可使多个按钮加载同一个样式
  TEZNKK3IfmPf 2024年03月22日 29 0
需求
        多个按钮使用同一个样式
原理
        写成组件形式(在或不在当前文件中),需要样式时,Button加载style即可
代码
Item {
    Rectangle {
        width: 800;
        height: 640;
        Column {
            Button {
                id: btn;
                text: "testStyle1"; // 会被样式label中的text覆盖
                style: ButtonStyle {
                    background: Rectangle {
                        color: control.hovered?"#a0a0a0":"#c0c0c0";
                        border.width: control.pressed?2:1;
                        border.color: "white";
                    }
                    label: Label {
                        text: control.text; // 设置label样式后,按钮显示以此text为准
                        color: "black";
                        font.pixelSize: 24;
                        font.bold: true;
                    }
                }
            }
            Button {
                id: btn1;
                text: "testStyle2"
                style: btnStyle;
            }
            Button {
//                id: btn1;
                text: "testStyle3"
                style: btnStyle;
            }
       }
    }
    Component {
        id: btnStyle;
        ButtonStyle {
            background: Rectangle {
                color: control.hovered?"#a0a0a0":"#c0c0c0";
                border.width: control.pressed?2:1;
                border.color: "white";
            }
            label: Label {
                text: control.text; // 设置label样式后,按钮显示以此text为准
                color: "black";
                font.pixelSize: 24;
                font.bold: true;
            }
        }
    }
}
效果
Qml实用技巧:将样式style从对象中独立出来,可使多个按钮加载同一个样式_Component
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2024年03月22日 0

暂无评论

TEZNKK3IfmPf