转载地址:http://blog.csdn.net/kanchuan1905/article/details/53762788
在Qt Quick的世界里,Window对象用于创建一个与操作系统相关的顶层窗口,包含了如Text, Rectangle, Image等元素。Window还有一个派生类,即大名鼎鼎的ApplicationWindow,也可以作为QML文档的根对象。上一篇文章,我们提到的使用QQuickView加载QML的方式,顶层窗口是由QQuickView创建的。
        要使用Window对象,需要使用下面这行代码来导入Window模块:
            import QtQuick.Window 2.2
        1)Window对象可以创建一个新的顶层窗口来作为Qt Quick的活动场景,它会自动设置好窗口的基本属性,如图标、标题、系统按钮。当然也可以撰写QML代码来设定窗口的属性。下面来谈谈这些属性。
        Window在桌面上的位置,由x, y属性决定,其大小由width,height属性决定。除此之外,你还可以使用minimumWidth ,  minimumHeight来限制窗口的最小尺寸,使用maximumWidth, maximumHeight来限制窗口的最大尺。作为受窗口管理系统控制的一个窗口,其显示状态有:正常、最小化、最大化、全屏、隐藏。PC操作系统的窗口管理系统多数都支持鼠标拖动改变窗口的大小和位置。
        Window对象的visibility属性用来设置这个窗口的显示状态,可以取下列值:
            Window. Windowed,窗口占屏幕的一部分,窗口管理系统支持同时显示多窗口时才有效。
         Window.Minimized,最小化到任务栏上的一个图标。
         Window.Maximized,最大化,占用任务栏之外的所有屏幕空间,标题栏依然显示。
         Window.FullScreen,全屏显示,占用整个屏幕,标题栏隐藏。
         Window.AutomaticVisibility,给Window一个默认的显示状态,它的实际值与平台实  现有关。
         Window.Hidden, 隐藏,窗口不可见,与visible属性的效果一样。
        窗口的隐藏、显示由布尔类型的visible属性控制,设置其为true则显示窗口,为false隐藏窗口。
        color属性用来设置窗口的背景颜色,可以用“blue",“#RRGGBB ", Qt.rgba()等形式为其赋值;
        opacity属性用来设置窗口透明度,取值范围是0一1.0; 
        title属性用来设置窗口的标题,字符串类型;
        activeFocusItem属性类型是Item,保存窗口中拥有活动焦点的Item,可能为null。
        contentOrientation属性用来设置窗口的内容布局方向,可以取下列值:
                Qt.PrimaryOrientation,使用显示设备的首选方向。
             Qt.LandscapeOrientation,横屏。
             Qt.PortraitOrientation,竖屏。
             Qt.InvertedLandscapeOrientation,相对于横屏模式,旋转了180°。
             Qt.InvertedPortraitOrientation,相对于竖屏模式,旋转了180°。     
        一个Qt Quick应用可能会有多个窗口,窗口之间的关系由modality(模态)属性决定,一个模态的窗口会阻止其他窗口获取输入事件。modality可以取下列值:
        a) Qt.NonModal,非模态。
        b) Qt. WindowModal ,窗口级别的模态,设置此属性的窗口只针对某一个窗口是模态的,如子窗口相对父窗口是模态的,相对同一应用中的其他非父窗口则没有模态效果。
        c) Qt.ApplicationModal,应用级别的模态,设置此属性的窗口会阻止同一应用的其他窗口获取输入事件。
       Window的flags属性就是用来设置窗口标志位的,取值与Qt C++一样,不过要通过Qt.Widget, Qt.Popup这种形式来使用。
       Window的data属性为默认属性,类型是list<Object>。
       2)ApplicationWindow是Window的派生类,使用它需要使用下面的语句来引入Controls模块:
         import QtQuick .Controls 1.2
        ApplicationWindow有点儿像QMainWindow,有menuBar, toolBar, statusBar属性,分别用来设置菜单、工具栏、状态栏,还有contentltem,可以用来设置内容元素的尺寸属性。  

QML学习之浅谈Window的更多相关文章

  1. TensorFlow 2.0 深度学习实战 —— 浅谈卷积神经网络 CNN

    前言 上一章为大家介绍过深度学习的基础和多层感知机 MLP 的应用,本章开始将深入讲解卷积神经网络的实用场景.卷积神经网络 CNN(Convolutional Neural Networks,Conv ...

  2. python学习(28) 浅谈可变对象的单例模式设计

    python开发,有时候需要设计单例模式保证操作的唯一性和安全性.理论上python语言底层实现和C/C++不同,python采取的是引用模式,当一个对象是可变对象,对其修改不会更改引用的指向,当一个 ...

  3. 关于AngularJS学习整理---浅谈$scope(作用域) 新手必备!

    作为初次接触 AngularJS的新手,想要深层理解里面的内容短时间还是不可能的,所以标题写了浅谈字样,以下内容是参考各位大神以及相关书籍整理加个人理解,出现错误的地方请大家指正. $scope(作用 ...

  4. 深度学习:浅谈RNN、LSTM+Kreas实现与应用

    主要针对RNN与LSTM的结构及其原理进行详细的介绍,了解什么是RNN,RNN的1对N.N对1的结构,什么是LSTM,以及LSTM中的三门(input.ouput.forget),后续将利用深度学习框 ...

  5. 浅谈window.attachEvent

    以前写 JavaScript 脚本时,事件都是采用object.event = handler;的方式初始化.这种方式对于 Internet Explorer.Mozilla/Firefox 和 Op ...

  6. Java学习笔记——浅谈数据结构与Java集合框架(第一篇、List)

    横看成岭侧成峰,远近高低各不同.不识庐山真面目,只缘身在此山中. --苏轼 这一块儿学的是云里雾里,咱们先从简单的入手.逐渐的拨开迷雾见太阳.本次先做List集合的三个实现类的学习笔记 List特点: ...

  7. 菜鸟学习计划浅谈之Linux系统

    人这一生都是在不断地学习,不断地进步中度过的,刚开始学习任何一门知识的时候,我们都习惯性的称自己为菜鸟,觉得自己对这方面的知识欠缺,水平很low,我也是如此.但我擅长总结,对于自己学习的新知识,总结学 ...

  8. 菜鸟学习计划浅谈之Linux系统 原

    人这一生都是在不断地学习,不断地进步中度过的,刚开始学习任何一门知识的时候,我们都习惯性的称自己为菜鸟,觉得自己对这方面的知识欠缺,水平很low,我也是如此.但我擅长总结,对于自己学习的新知识,总结学 ...

  9. [JS学习笔记]浅谈Javascript事件模型

    DOM0级事件模型 element.on[type] = function(){} 兼容性:全部支持   lay1 lay2 lay3 e.target:直接触发事件的元素[IE8及以下不支持tage ...

随机推荐

  1. Android屏幕和尺寸

    DisplayMetrics dm=new DisplayMetrics(); //获取的像素高度不包含虚拟键所占空间 ((WindowManager)context.getSystemService ...

  2. 2、Android自己的下拉刷新SwipeRefreshLayout--样式2

    <android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/ ...

  3. 深搜———ZOJ 1004:anagrams by stack

    细节问题各种虐!! 其实就是简单的一个深搜 看成二叉树来理解:每个节点有两个枝:入栈和出栈. 剪枝操作:只有当栈顶元素和当前位置的目标字符相同时才出栈,否则就不出栈 dfs写三个参数:depth搜索深 ...

  4. 160523、Oracle建立表空间和用户

    建立表空间和用户的步骤: 用户 建立:create user 用户名 identified by "密码"; 授权:grant create session to 用户名; gra ...

  5. SpringMVC的解释与搭建Maven私有代理服务器

    SpringMVC静态资源处理 通常会配置SpringMVC拦截所有请求 即将DisptcherServlet的url-pattern设置为 / 此时会导致SpringMVC同时拦截.css   .j ...

  6. git--简单操作

    Git简介 一.      安装 下载地址: https://git-scm.com/downloads: https://pan.baidu.com/s/1kU5OCOB#list/path=%2F ...

  7. 知问前端——html+jq+jq_ui+mySql+ajax

    **************************************************************************************************** ...

  8. SaltStack远程执行

    上一篇:SaltStack概述及安装 master也需要安装一个minion 启动salt-master systemctl start salt-master 配置文件在目录/etc/salt下 p ...

  9. plsql连接其他服务器的oracle

    plsql除了连接本地的oracle还需要连接其他服务器上的oracle时 1.下载安装oracleClient:2.在oracleClient安装目录下:例如:D:/instantclient_11 ...

  10. ASP.NET Identity 2集成到MVC5项目--笔记01

    Identiry2是微软推出的Identity的升级版本,较之上一个版本更加易于扩展,总之更好用.如果需要具体细节.网上具体参考Identity2源代码下载 参考文章 在项目中,是不太想直接把这一堆堆 ...