博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
qml:基本知识记录
阅读量:5120 次
发布时间:2019-06-13

本文共 2550 字,大约阅读时间需要 8 分钟。

1.  property信号处理函数;

     在qml中,通过property可以定义属性,这些属性自带信号处理函数,例如:

      property   string    szTitle: “hello world!"

     那么,   相应的就有了 onSzTitleChanged信号处理函数;

 2.  ListView的使用

ListView{                        width: 200;        //宽高必须进行设置,不然显示不出来;                        height: 300;                        model: ListModel{                            ListElement{test: "nihao"}                            ListElement{test: "zhongguo"}                            ListElement{test: "nihao"}                            ListElement{test: "heelo"}                            ListElement{test: "nihao"}                        }                        delegate:Text{ text: model.test;}      //delegate   单元素设置;            }

 3.  alias 与 flickable联合使用;

当使用alias对flickable进行联合,注意flickable的clip的设置,该设置默认是flase的,如果设置为true,那么就要设置width,height,不然内容不会自动进行弹动;

 

4、资源文件的使用

  组件最好导入到资源文件中,这样在编译的时候可以讲组件编译成二进制,而且这样进行访问的时候也比较方便;

5、Qt.platform.os的使用

  使用Qt.platform.os可以获取当前使用的系统,用来进行不同环境的配置。

       系统类别有:

"android" - Android"blackberry" - BlackBerry OS"ios" - iOS"linux" - Linux"osx" - OS X"unix" - Other Unix-based OS"windows" - Windows"wince" - Windows CE"winrt" - Windows RT"winphone" - Windows Phone

 6、javascript 中 string中数字字符转换为int;

 譬如: "123world",从中提取出123;  使用函数parseInt();

var  szStr = "123world"var  szTest = "100"parseInt(szStr)            //返回123;parseInt(szTest)          //返回100;

7、QString格式化方式;

QString格式化可以采用asprintf函数,该函数定义为static(即静态函数);

[static] QString::asprintf(const char *cformat, ...)

但是,新版本的qt不推荐这种方式,而推荐采用QTextStream or arg;

arg: QString i;           // current file's number  QString total;       // number of files to process  QString fileName;    // current file's name  QString status = QString("Processing file %1 of %2: %3")                  .arg(i).arg(total).arg(fileName);
QTextStream:  QString result;  QTextStream(&result) << "pi = " << 3.14;  // result == "pi = 3.14"

8、FocusScope

FocusScope继承于item,提供焦点区域,可以用于复用性组件创建。

9、Text and  TextField

Text: 纯文本;

TextField: 可供编辑的单行文本,通过设置readOnly为false,可以实现不可编辑,这时候仅能全选等操作而不能输入编辑。

10、exe路径获取;

头文件  #include <QCoreApplication>, 按照下面的方式获取exe文件的路径;

QString szAppPath = QCoreApplication::applicationDirPath();

11、QVariantList使用;

QVariantList可以很方便实现C++与qml之间的数据交换,通过下面的方式实现双边转换:

QVariantList  添加数据;例如: 将QString转换为QVariant;QString  szStr = "hello  world!";QVariantList   testList;testList.append(QVariant::fromValue(szStr));反过来,将QVariant转换为QString;QVariant  temp = testList[0];QString  szStr = temp.value
(); 注: value可以实现转换为自定义类型,比较方便,推荐使用;

  

 

注: 该篇为扩展型博文,后续将逐步添加;

转载于:https://www.cnblogs.com/yinwei-space/p/8705983.html

你可能感兴趣的文章
万能的SQLHelper帮助类
查看>>
tmux的简单快捷键
查看>>
[Swift]LeetCode922.按奇偶排序数组 II | Sort Array By Parity II
查看>>
《绿色·精简·性感·迷你版》易语言,小到不可想象
查看>>
Android打包key密码丢失找回
查看>>
VC6.0调试技巧(一)(转)
查看>>
类库与框架,强类型与弱类型的闲聊
查看>>
webView添加头视图
查看>>
php match_model的简单使用
查看>>
在NT中直接访问物理内存
查看>>
Intel HEX 文件格式
查看>>
SIP服务器性能测试工具SIPp使用指导(转)
查看>>
回调没用,加上iframe提交表单
查看>>
(安卓)一般安卓开始界面 Loding 跳转 实例 ---亲测!
查看>>
Mysql 索引优化 - 1
查看>>
LeetCode(3) || Median of Two Sorted Arrays
查看>>
大话文本检测经典模型:EAST
查看>>
待整理
查看>>
一次动态sql查询订单数据的设计
查看>>
C# 类(10) 抽象类.
查看>>