QT quick基础QML学习3(基本控件)

目录

ApplicationWindow

StatusBar

toolBar

Action


ApplicationWindow

对应QMainWindow,提供顶层应用程序窗口

提供窗口顶部横向的菜单栏,下面例子点击响应的MenuBarItem会触发Triggered信号,QML的消息响应函数是On+信号名称

StatusBar

提供底部状态栏

toolBar

提供工具栏,可以添加ToolButton和其它组件

Action

提供能够绑定到导航和视图的抽象的用户界面动作

import QtQuick.Controls 1.2
import QtQuick.Layouts 1.0

ApplicationWindow {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    statusBar: StatusBar {
        RowLayout {
            anchors.fill: parent
            Label { text: "Read Only" }
        }
    }
    

     toolBar:ToolBar {
         
         RowLayout {
             anchors.fill: parent
             ToolButton {
                 iconSource: "qrc:/new.png"
             }
             ToolButton {
                 iconSource: "qrc:/open.png"
             }
             ToolButton {
                 iconSource: "qrc:/save-as.png"
             }
             Item { Layout.fillWidth: true }   
             CheckBox {
                 text: "Enabled"
                 checked: true
                 Layout.alignment: Qt.AlignRight
             }
               
         }
     }

     Button {action:copyAction;}
     
     menuBar: MenuBar{
        Menu {
            
            title: "文件";
            MenuItem{
                id: menuItem
                action: copyAction
                text: "退出";
                onTriggered: Qt.quit();  
            }
        }
        
        Menu {
            title: "帮助";
            MenuItem{
                text: "关于";
                action:cutAction
                onTriggered: root.showAbout();
            }
            MenuItem{
                text: "官网";
                action:pasteAction
                onTriggered: Qt.openUrlExternally("http://www.baidu.com");
            }
        }
    }
    Action {
        id: copyAction
        text: "&Copy"
        shortcut: StandardKey.Copy
        iconName: "edit-copy"
        enabled: (!!activeFocusItem && !!activeFocusItem["copy"])
        onTriggered: activeFocusItem.copy()
    }

     Action {
        id: cutAction
        text: "Cu&t"
        shortcut: StandardKey.Cut
        iconName: "edit-cut"
        enabled: (!!activeFocusItem && !!activeFocusItem["cut"])
        onTriggered: activeFocusItem.cut()
    }

     Action {
        id: pasteAction
        text: "&Paste"
        shortcut: StandardKey.Paste
        iconName: "edit-paste"
        enabled: (!!activeFocusItem && !!activeFocusItem["paste"])
        onTriggered: activeFocusItem.paste()
    }
}

 

关于layout可以看官网Layout QML Type | Qt Quick 5.15.13,也是布局管理,可以认为是父组件里子控件的布局。

 未完待续。。。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路奇怪

有钱出钱,没钱多出编程主意啊

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值