Qt QML的表格使用、弹出新界面、同一位置放置不同的界面

一、表格使用

1、创建表格

     和QWidget那一套差不多,都是先创建一个表格,然后用模式去初始化它,但是表格要设置宽高这些。每一列的高也要设置,如果想要更加个性化的话,则可以使用委托,这个不太懂,就不写了,先看代码。

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第1张图片

可以看到,这个地方设置了model为stockModel。模式的话,里面可以初始化一些行,比如这样

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第2张图片

效果如下:

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第3张图片

2、添加数据

向表格里添加数据,其实是向模式里添加元素。实例如下:

可以看到,双引号里面的是每一个属性的名称,后面对应着它要添加的新项的内容。

3、获取表格某一元素

获取某一元素的值,其实是从模式里获取值,但是获取的是这一行数据的一个对象,我们必须使用它的属性才可以获取到,实例如下:

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第4张图片

可以看到,我们这个地方写了一个循环,遍历model的所有行,如果哪一行的number等于了我输入的值,则更新它的balance。

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第5张图片

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第6张图片

至于删除和修改可以参考官方的listModel。

二、弹出新界面

1.定义一个Window

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第7张图片

具体下面的部件实现,省略,只需要记住,先将visible设置为false,设置一个按钮被点击时改变它的visible即可,实例如下:

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第8张图片

效果如下:

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第9张图片

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第10张图片

 

三、同一位置放不同界面

1、预留空间

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第11张图片

2、创建几个Rectangle

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第12张图片

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第13张图片

3、设置他们visible为false,当被点击时,设置这个部件为true,其他为false

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第14张图片

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第15张图片

效果如下:

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第16张图片

Qt QML的表格使用、弹出新界面、同一位置放置不同的界面_第17张图片

 

你可能感兴趣的:(Qt QML的表格使用、弹出新界面、同一位置放置不同的界面)