三分钟Qt Quick入门

Qt Quick是一种设计用户界面的新方法。 在介绍Qt Quick之前,让我们先看一下现念的用户界面UI是什么样的。在桌面操作系统下,标准的按钮,文本框,窗体仍然能满足要求。但是这些千篇一律的灰色单调的控件渐渐让用户感到厌倦了。用户们更想看到平滑观感的,光泽的,动态的的用户界面。Qt Quick就是为了实现这些的目标。 Qt Quick包括两个部分。第一部分是QtDeclarative模块。这个模块负责把Qt Quick集成到Qt应用程序中。第二部分是一种界面描述语言:QML。使用QtDeclarative使得开发者能够在C++和QML之间共享数据对象,也可以把C++类插入到QML之中,等等。QML是个全新的语言,专门为设计用户界面设计,在其它的开发中也有用武之地。 迫不及待了吧。让我们看一个简单的例子: import Qt 4.6 Rectangle { width: 200 height: 200 Text { text: “hello! ykyi.net” font.pointSize: 10 font.bold: true anchors.centerIn: parent } } 读完这断代码,再尝试在Qt Creator中运行它。不用我多费口舌,你就恍然大悟了。每一个以大写字母开头的单词定义了一个新的对象。最外面的矩形则是主窗体,可以给它设置属性。比如anchors属性把Text限定在窗体的中央。这样,即使窗体放大了,文本仍然显示在窗体正中央。 前文,我有说过平滑观感的,光泽的,动态的的用户界面。那么Qt Quick怎么做到呢?简单!看看下面的代码,编辑Text的属性,设置rotation:NumberAnimation。不可思议的事情就发生了! rotation: NumberAnimation { to: 360; duration: 1500; running: true; repeat: true; } 现在,指定的文本疯狂的转动起来。我们已经看到在Qt Quick中开发有物资的界面是多么简单。我们所展示的只是Qt Quick特效的凤毛一角,最终能创造出什么样的奇幻效果只受限于你的想象力。 copyright ykyi.net

July 3, 2012 · 1 min · kamus

使用Necessitas在Android平台上运行Qt程序失败

什么是 Necessitas? Necessitas是Qt在Android操作系统上的一个移植,同时提供了Qt Creator与Android的集成。Necessitas计划为你提供了Android平台下的Qt,以及一个一流的平易近人的IDE,方便你在安卓平台下管理,开发,部署,运行 & 调试你的Qt应用。 什么是Minstro? Necessitas也是Ministro的官网。Ministro为LGPL Qt共享库提供了一个系统范围的下载器(downloader)和安装器(installer)。你可以在Andorid软体市场获得Ministro。 如何安装Necessitas SDK开发包? 相当地easy啊!http://sourceforge.net/projects/necessitas/files/ 下载sdk开发包。有linux, win, mac 三个平台下的。安装过程傻瓜式 next next next 。哥尝试在Linux下安装出错了。安装程序没有加载起来。 zausiu@potassium:/tmp$ ./necessitas-0.3-online-sdk-installer-linux  ./necessitas-0.3-online-sdk-installer-linux: error while loading shared libraries: libgobject-2.0.so.0: cannot open shared object file: No such file or directory   我先尝试在deibian安装linux版本。结果安装文件启动时加载libglobject.so失败了!但是明明在/lib目录下啊!解决不了,唔知点解!就只好在win7下安装了windows版本。注意要勾选上装 ant,如果你的系统里之前没有安装ant的话。装好ant后还要把ant的路径添加入环境变量里。 如何安装Android SDK开发包? 去官网下载了然后安装。简单地令人发指!!!哥不能讲怎么安装它,免得说我侮辱你的智慧。 http://developer.android.com/sdk/index.html 开始开发 运行在安卓上的Qt程序被编译成共享对象(shared objects)。一个Java Launcher,已经集成在necessitas sdk里,会加载这个shared objects。当然,对于应用开发者,这个Java Launcher是完全透明的。要注意的是,Qt包含了很多互相引用的库,只有Android V1.6以上才支持这个functionality。   哈。最最重要的。尝试第一个将被部署到android上的Qt应用。用安装好的 Necessitas Qt Creator创建了一个GUI程序。运行。。。运行。报错了!!!哭啊。 ma-make: *** [install_target] Error 2 The process "D:\necessitas\QtCreator\bin\ma-make.exe" exited with code 2. Error while building project 4android (target: Android) When executing build step 'Copy application data' 用"When executing build step 'Copy application data'"google了一下。木有得到有价值的信息。不知道如何解决啊。哈~~那就不管了!!! copyright ykyi.net   ...

December 9, 2011 · 1 min · kamus