做一个简单的QML待做事项列表,能够动态添加和删除和编辑数据

GitHub:八至

作者:狐狸家的鱼

本文链接:QML学习笔记(五)— 做一个待做事项列表

主要用到QML:ListView

效果

全部代码

TodoList.qml

/*
date:20181221
author:狐狸家的鱼
*/
import QtQuick 2.7
import QtQuick.Controls 2.2
import QtQuick.Layouts 1.3
ColumnLayout{
Frame{
Layout.fillWidth: true ListView{
implicitWidth: 250
implicitHeight: 250
clip: true model: ListModel{
id:model
ListElement{
done:true
description:"water the flowers"
}
ListElement{
done:false
description:"Do yoga"
}
ListElement{
done:false
description:"Blogging"
}
} delegate: RowLayout{
width: parent.width
Text{
text: "Step" + "" + (index+1);
} CheckBox{
checked: model.done
onClicked: {
model.done = checked
}
}
TextField{
text: model.description
onEditingFinished: model.description = text
Layout.fillWidth: true }
// TextEdit{
// text: model.description
// onEditingFinished: model.description = text
// Layout.fillWidth: true
// }
// TextInput{
// text: model.description
// onEditingFinished: model.description = text
// Layout.fillWidth: true
// } }
} }
RowLayout{
Button{
Layout.fillWidth: true
text: 'AddItem'
onClicked: model.append({done:false,description:""})
}
Button{
Layout.fillWidth: true
text: 'DeleteItem'
onClicked: model.remove(ListView.currentIndex)
}
}
}

main.qml

/*
date:20181221
author:狐狸家的鱼
*/
import QtQuick 2.9
import QtQuick.Window 2.2
import QtQuick.Layouts 1.3
Window {
visible: true
width: 400
height: 400
title: qsTr("Hello World") TodoList{
Layout.fillWidth: true;
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
} }

QML学习笔记(五)— 做一个简单的待做事项列表的更多相关文章

  1. 【opencv学习笔记五】一个简单程序:图像读取与显示

    今天我们来学习一个最简单的程序,即从文件读取图像并且创建窗口显示该图像. 目录 [imread]图像读取 [namedWindow]创建window窗口 [imshow]图像显示 [imwrite]图 ...

  2. QML学习笔记(六)- 简单计时器和定时器

    做一个简单的qml计时器和定时器,左键触发计时,右键触发定时 GitHub:八至 作者:狐狸家的鱼 本文链接:QML学习笔记(六)- 简单计时器和定时器 左键点击按钮,触发计时器,中键可以暂停计时,同 ...

  3. Linux系统学习笔记之 1 一个简单的shell程序

    不看笔记,长时间不用自己都忘了,还是得经常看看笔记啊. 一个简单的shell程序 shell结构 1.#!指定执行脚本的shell 2.#注释行 3.命令和控制结构 创建shell程序的步骤 第一步: ...

  4. UNP学习笔记2——从一个简单的ECHO程序分析TCP客户/服务器之间的通信

    1 概述 编写一个简单的ECHO(回复)程序来分析TCP客户和服务器之间的通信流程,要求如下: 客户从标准输入读入一行文本,并发送给服务器 服务器从网络输入读取这个文本,并回复给客户 客户从网络输入读 ...

  5. Django 学习笔记之六 建立一个简单的博客应用程序

    最近在学习django时建立了一个简单的博客应用程序,现在把简单的步骤说一下.本人的用的版本是python 2.7.3和django 1.10.3,Windows10系统 1.首先通过命令建立项目和a ...

  6. [原创]java WEB学习笔记12:一个简单的serlet连接数据库实验

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  7. Ruby学习笔记2 : 一个简单的Ruby网站,搭建ruby环境

    Ruby on Rails website 的基础是 请求-返回 循环. 首先是浏览器请求服务器, 第二步,Second, in our Rails application, the route ta ...

  8. 【Python学习笔记三】一个简单的python爬虫

    这里写爬虫用的requests插件 1.一般那3.x版本的python安装后都带有相应的安装文件,目录在python安装目录的Scripts中,如下:   2.将scripts的目录配置到环境变量pa ...

  9. Android Studio 学习笔记(五):WebView 简单说明

    Android中一个用于网页显示的控件,实际上,也可以看做一个功能最小化的浏览器,看起来类似于在微信中打开网页链接的页面.WebView主要用于在app应用中方便地访问远程网页或本地html资源.同时 ...

随机推荐

  1. Effective C++目录

    条款1:视C++为一个语言联邦 条款2:尽量以const.enum.inline替换#define 条款3:尽可能使用const 条款4:确定对象使用前已先被初始化 条款5:了解C++默认编写并调用哪 ...

  2. 剑指offer(11)

    题目: 输入一个链表,输出该链表中倒数第k个结点. 思路: 我们一先想到的应该是循环两次链表,第一次获得它的长度,然后用长度-k,得出目标节点在链表的第几位,再循环一次. 如果要求只用一次循环的话,我 ...

  3. 一个简单jpa例子

    package com.example.demo.entity; import javax.persistence.*; /*使用jpa注解配置映射关系*/ /*告诉jpa这是一个实体类和(数据表映射 ...

  4. 谈谈对C#中反射的一些理解和认识(下)

    在上一篇中我们列举了一些反射的常规的使用,这一篇我们将介绍一些关于关于反射的高级属性,这些包括创建对反射的性能的总结以及如何优化反射性能,以及通过InvokeMember的方法如何去调用反射等等,通过 ...

  5. linux中一些特殊的中文文件不能删除问题

    例: [root@iZ2zecl4i8oy1rvs00dqzeZ tmp]# ,),(,,' [root@iZ2zecl4i8oy1rvs00dqzeZ tmp]# echo "rm -rf ...

  6. java构造器和构建器

    本文摘自:https://blog.csdn.net/wh2827991/article/details/79013115 在实例化一个类的过程中,通常会遇到多个参数的构造函数,但如果有些参数是非必需 ...

  7. ORACLE 增加两列字段

    declare v_cnt number; V_SQL VARCHAR2 (500) := '';begin select count(*) into v_cnt from dual where ex ...

  8. JQuery invoke remote webservice

    Sending the Access-Control-Allow-Origin header allows basic cross-origin access, but calling ASP.NET ...

  9. hdu-4300(kmp或者拓展kmp)

    题意:乱七八糟说了一大堆,就是先给你一个长度26的字符串,对应了abcd....xyz,这是一个密码表.然后给你一个字符串,这个字符串是不完整的(完整的应该是前半部分是加密的,后半部分是解密了的),然 ...

  10. servlet篇 之 访问形式

    get方式访问和post方式访问: get/post区别? 1) 参数传递 查询字符串(的形式)! get  url?key1=value&key2=value 2) http协议 请求报文包 ...