无题
MBTI测试
应该完成的功能有:
测试功能
投票功能
个人信息
测试
简要说明
用户可以选择不同的测试,进入测试进行答题。答题可以选择上一题,下一题,也可以选择答题卡看总体答题情况。测试结束后,显示用户的测试结果。结果中包含:xxx。
前置条件
用户已登录。
约束条件
用户对每一个测试不能超过50次。
事件流
基本流
用户点击其中一个类型的测试。
进入测试页面,点击选项后自动调到下一题。在第一题不能返回上一题,在最后一题下一题按钮变为提交。点击答题卡,查看总体答题情况,并可以跳转到任意一题。
测试完毕并提交后,查看结果,结果保存到用户信息中。
备选流
若用户中途返回退出该页面,则弹出是否退出按钮,退出不保存当前进度。
后置条件
测试成功后,数据库中添加该用户的测试结果。否则,系统维持原状。
好友匹配
投票
简要说明
用户可以看到所有已经被添加的人物,可以看到其简要信息。点击该人物可以进入详情页面,显示该人物的详细信息。包括:
名字
领域/职业
简介
点赞数
喜爱数
评论(楼主头像、昵称、发表日期、回复详情(回复用户的头像、昵称、发表日期、点赞数))
...
无题
Qt Charts可以做图表
Qt Design Studio可以设计UI(包含了其他UI模块??)
小程序美化-资源
图标
iconfont
参考微信小程序篇—如何使用iconfont彩色图标—Symbol类型_Lois_前端小白的博客-CSDN博客_symbol_url
注意如何更新iconfont图标。
背景
25种背景渐进色 30secondsofcode.org
...
小程序美化-全局样式规范
我们设计小程序时,对于很多组件的样式设置方法是很类似的,比如卡片类都需要设置一定的样式,都存在大字,中字,小字的层级划分。我们可以将所有页面的样式统一起来,规范起来,方便调整,也十分规整。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110/*app.wxss*//*导航栏位置固定*/c-navigation-bar{ position: fixed; z-index: 1;}.fill-page{ position: relative; width: 100%; min-height: 100vh;}/*位置*//*底部居中,要 ...
小程序美化-自定义navigationBar
设页面名为user
在页面的user.json配置文件中设置取消navigationBar
自定义一个导航栏组件c-navigation-bar
自定义组件看个人情况,但导航栏的高度要在app.js进行获取并在user.js中使用const app=getApp()和app.globalData.navigationBarHeight来引用。
12345678910/*app.js*///单位px wx.getSystemInfo().then(res => { this.globalData.statusBarHeight = res.statusBarHeight //状态栏高度 const menuButtonInfo = wx.getMenuButtonBoundingClientRect();//胶囊栏位置信息 this.globalData.navigationBarHeight = (menuButtonInfo.top - res.statusBarHeight) * 2 ...
使用云函数
准备
在project.config.json中配置云函数文件夹路径(提前创建好文件夹)
1"cloudfunctionRoot": "cloudfunctions/"
app.js中对云函数初始化
12345678//要使用云函数,必须写以下代码 if(!wx.cloud){ console.log('基础库版本太低'); }else{ wx.cloud.init({ traceUser:true }) }
新建云函数
部署云函数
更新云函数
调用云函数
在某JS页面内:
12345wx.cloud.callFunction({ name:"queryCharacter"//云函数名称 }).then( )
云函数操作
查
1234567const cloud = requi ...
wxml节点上事件触发时传递数据到js中
参考事件 | 微信开放文档 (qq.com)。
将wxml节点中的数据传递到js页面进行处理
节点中使用data-DataName
bindtap表示在此节点上绑定一个tap事件,事件处理函数为tapName。可以将节点上的数据传到事件处理函数tapName上,使用data-DataName来传递,其中DataName为传递的属性名。
1<view id="tapTest" data-hi="Weixin" bindtap="tapName"> Click me! </view>
tap上面的节点后,将tap的相关信息封装为event传到js页面中的tapName函数(绑定的事件处理函数),打印event可看到里面封装了哪些信息。
12345Page({ tapName: function(event) { console.log(event) }})
需要注意的有:
target封装了触发事件的节点id和传出来的数据dataset。节点传出的属性hi可 ...
小程序整体架构
小程序运行逻辑:wxml制定布局、wxss进行美化、js处理数据和控制逻辑。
app.js
app.json
12345678910111213141516171819202122232425262728293031323334{ "pages":[//有哪些页面,在这写下来编译过后会自动生成页面 "pages/main/main", "pages/user/user", ], "window":{//导航栏设置 "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#fff", "navigationBarTitleText": "MBTI", "navigationBarTextStyle":"black" ...
C++拾遗1
常量
整型常量
0开头为八进制,0x开头为十六进制,其余为十进制。
12345678910#include<iostream>using namespace std;int main(){ cout<<11<<endl; cout<<011<<endl; cout<<0x11<<endl; return 0;}
123456711917--------------------------------Process exited after 0.04045 seconds with return value 0请按任意键继续. . .
整型常量加后缀(不分大小写),L表示长整型,U表示无符号型,L和U可以同时用。
实型常量
一般形式:12.5,-12.5。
指数形式:0.345E+2(即0.345×10^2),0.345E-3(即0.345×10^(-3)),其中E大小写无所谓。
实型常量默认为double,如果加上后缀F(或f)可变成float型。
字符常量
字符可用8进制或16进 ...
Python基础语法plus
人机交互
Input用法
12345s = input()#输入一个字符串s = input("请输入数据:")#提示信息后输入s = eval(input())#根据字符串自动返回匹配类型的值。输入12,返回int;输入3.2,返回float;输入[1, 2],返回lists = float(input())s = int(input())
进制转换
Print用法
12345678910111213141516print(1,2,3,4,5) # 输出:1 2 3 4 5,默认用空格分隔多个输出对象print(1,2,3,4,5,sep = ',') # 输出:1,2,3,4,5,各输出对象间用指定的逗号分隔print(2019,11,18,sep = '/') # 输出:2019/11/18print(23,59,36,sep = ':') # 输出:23:59:36print([1,2,3,4,5]) # 输出:[1, 2, 3, 4, 5], ...